Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > IL-2 Sturmovik: Cliffs of Dover > FMB, Mission & Campaign builder Discussions

Reply
 
Thread Tools Display Modes
  #1  
Old 10-12-2011, 09:09 AM
Ataros Ataros is offline
Approved Member
 
Join Date: Jun 2010
Location: USSR
Posts: 2,439
Default

I get this OnPlaceEnter if enable my "NET message"

Code:
[13:01:51]	Server: 3GIAP_Atas enters the battle.
[13:01:53]	Server: 3GIAP_Atas will fly for the Red forces.
[13:01:58]	Loading mission ...
[13:01:58]	Server to [Server]: A new group of 1 Red aircraft was reported.
[13:01:58]	Mission loaded. time = 0.329
[13:01:58]	Server to [3GIAP_Atas]: Удачного вылета!
[13:01:58]	Server to [3GIAP_Atas]: Пожалуйста, поставьте в настройках игры скорость сети 'ISDN'. Это нужно для тестирования сервера. Пожалуйста, сообщите на форуме sukhoi.ru уменьшает ли это лаги.
[13:01:58]	
[13:01:58]	=================================================
[13:01:58]	System.IO.IOException: I/O error occurred.
[13:01:58]	
[13:01:58]	Server stack trace: 
[13:01:58]	   at pFdAnwvFuaY9YxSo5Rb.MTbs2Wva9ZwBOQUYQch.XV70nxU5mb(String )
[13:01:58]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.pAevmyIzcXSHogPw31FA(Object , Object )
[13:01:58]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.vdHekiRiXUo(String , Object[] )
[13:01:58]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.5ExekdenPIb(Player[] , String , Object[] )
[13:01:58]	   at LrAZHYDb5HXlxAcGxGQ.O8MywKDql50K0Y6Ucrm.LogServer(Player[] , String , Object[] )
[13:01:58]	   at maddox.game.GameDef.gpLogServer(Player[] to, String format, Object[] args)
[13:01:58]	   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
[13:01:58]	   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
[13:01:58]	
[13:01:58]	Exception rethrown at [0]: 
[13:01:58]	   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
[13:01:58]	   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
[13:01:58]	   at maddox.game.IGamePlay.gpLogServer(Player[] to, String format, Object[] args)
[13:01:58]	   at Mission.OnPlaceEnter(Player player, AiActor actor, Int32 placeIndex)
[13:01:58]	   at maddox.game.ABattle.OnPlaceEnter(Player player, AiActor actor, Int32 placeIndex)
[13:01:58]	   at maddox.game.ABattle.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:01:58]	   at maddox.game.world.Strategy.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:01:58]	   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
[13:01:58]	   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
[13:01:58]	
[13:01:58]	Exception rethrown at [1]: 
[13:01:58]	   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
[13:01:58]	   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
[13:01:58]	   at maddox.game.IBattle.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:01:58]	   at maddox.game.GameDef.eventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:01:58]	   at dp8K7ffZC2JmTFxNtum.gkydOifm2sRXchrPjNC.eventGame(GameEventId , Object , Object , Int32 )
[13:01:58]	   at tpZkklAJjTISdGT144j.fBZFTNAMvsuuP0ewCS3.AY6A72gxK6R(GameEventId , Object , Object , Int32 )
[13:01:58]	=================================================
[13:02:04]	Chat: Server: 	!!! VULCHING IS NOT ALLOWED ON THIS SERVER !!!
[13:02:47]	Loading mission ...
[13:02:47]	Server to [Server]: A new group of 1 Red aircraft was reported.
[13:02:47]	Mission loaded. time = 0.009
[13:02:47]	Server to [3GIAP_Atas]: Удачного вылета!
[13:02:47]	Server to [3GIAP_Atas]: Пожалуйста, поставьте в настройках игры скорость сети 'ISDN'. Это нужно для тестирования сервера. Пожалуйста, сообщите на форуме sukhoi.ru уменьшает ли это лаги.
[13:02:47]	
[13:02:47]	=================================================
[13:02:47]	System.IO.IOException: I/O error occurred.
[13:02:47]	
[13:02:47]	Server stack trace: 
[13:02:47]	   at pFdAnwvFuaY9YxSo5Rb.MTbs2Wva9ZwBOQUYQch.XV70nxU5mb(String )
[13:02:47]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.pAevmyIzcXSHogPw31FA(Object , Object )
[13:02:47]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.vdHekiRiXUo(String , Object[] )
[13:02:47]	   at Gs6THTU8KBgeGhkm4tn.1yUfFwUh503FN6STRyP.5ExekdenPIb(Player[] , String , Object[] )
[13:02:47]	   at LrAZHYDb5HXlxAcGxGQ.O8MywKDql50K0Y6Ucrm.LogServer(Player[] , String , Object[] )
[13:02:47]	   at maddox.game.GameDef.gpLogServer(Player[] to, String format, Object[] args)
[13:02:47]	   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
[13:02:47]	   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
[13:02:47]	
[13:02:47]	Exception rethrown at [0]: 
[13:02:47]	   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
[13:02:47]	   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
[13:02:47]	   at maddox.game.IGamePlay.gpLogServer(Player[] to, String format, Object[] args)
[13:02:47]	   at Mission.OnPlaceEnter(Player player, AiActor actor, Int32 placeIndex)
[13:02:47]	   at maddox.game.ABattle.OnPlaceEnter(Player player, AiActor actor, Int32 placeIndex)
[13:02:47]	   at maddox.game.ABattle.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:02:47]	   at maddox.game.world.Strategy.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:02:47]	   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
[13:02:47]	   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
[13:02:47]	
[13:02:47]	Exception rethrown at [1]: 
[13:02:47]	   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
[13:02:47]	   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
[13:02:47]	   at maddox.game.IBattle.OnEventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:02:47]	   at maddox.game.GameDef.eventGame(GameEventId eventId, Object eventArg0, Object eventArg1, Int32 eventArgInt)
[13:02:47]	   at dp8K7ffZC2JmTFxNtum.gkydOifm2sRXchrPjNC.eventGame(GameEventId , Object , Object , Int32 )
[13:02:47]	   at tpZkklAJjTISdGT144j.fBZFTNAMvsuuP0ewCS3.AY6A72gxK6R(GameEventId , Object , Object , Int32 )
[13:02:47]	=================================================
[13:02:54]	Loading mission ...
[13:02:54]	Server to [Server]: A group of Red 1 just appeared.
[13:02:54]	Mission loaded. t
Code:
    public override void OnPlaceEnter(Player player, AiActor actor, int placeIndex)
    {
        base.OnPlaceEnter(player, actor, placeIndex);

        // Intro messages here
        #region Welcome msgs
        // these 2 work fine
        sendChatMessageTo(player, new string[] { "ru" }, "Good luck and have fun!", null);
        sendChatMessageTo(player, "ru", "Удачного вылета!", null);

        // NET settings msg - do not work on dedicated server, works on hosted server for host at least
        // prevents several lines of code from execution, e.g. current109s++ does not work

        sendScreenMessageTo(player, new string[] { "ru" }, "Please set your NET speed to ISDN in game network settings. This is needed for server testing purposes.", null);
        sendScreenMessageTo(player, "ru", "Пожалуйста, поставьте в настройках игры скорость сети 'ISDN'. Это нужно для тестирования сервера.", null);
        Timeout(7, () => // 2nd part
        {
            sendScreenMessageTo(player, new string[] { "ru" }, "Please report on 1C Clifs of Dover forums if this helps reducing lag.", null);
            sendScreenMessageTo(player, "ru", "Пожалуйста, сообщите на форуме sukhoi.ru уменьшает ли это лаги.", null);
        });
        sendChatMessageTo(player, new string[] { "ru" }, "Please set your NET speed to ISDN in game network settings. This is needed for server testing purposes. Please report on 1C forums if this helps reducing lag.", null);
        sendChatMessageTo(player, "ru", "Пожалуйста, поставьте в настройках игры скорость сети 'ISDN'. Это нужно для тестирования сервера. Пожалуйста, сообщите на форуме sukhoi.ru уменьшает ли это лаги.", null);

        Timeout(20, () => // works fine
        { 
            msgCurrentObjectives(player);            // current objectives
        });
Reply With Quote
  #2  
Old 10-12-2011, 09:19 AM
FG28_Kodiak FG28_Kodiak is offline
Approved Member
 
Join Date: Dec 2009
Location: Swabia->Bavaria->Germany
Posts: 884
Default

Could you change the message for testing please, seems it's a problem with the string, may be to long or the 'ISDN'
Reply With Quote
  #3  
Old 10-12-2011, 09:22 AM
Ataros Ataros is offline
Approved Member
 
Join Date: Jun 2010
Location: USSR
Posts: 2,439
Default

Quote:
Originally Posted by FG28_Kodiak View Post
Could you change the message for testing please, seems it's a problem with the string, may be to long or the 'ISDN'
I'll try it now.

2nd issue still remains. I see all messages from OnTickGame ONLY in server log but not on screen because they are sent only to server, not to remote players.

Code:
[13:17:48]	Server to [Server]: Please leave your feedback at forum.1cpublishing.eu in CloD section. We highly appreciate it!
Reply With Quote
  #4  
Old 10-12-2011, 09:31 AM
FG28_Kodiak FG28_Kodiak is offline
Approved Member
 
Join Date: Dec 2009
Location: Swabia->Bavaria->Germany
Posts: 884
Default

Could it be that GamePlay.gpPlayer is the server on dedicated?

Could you please test it with:
Code:
using System;
using System.Collections;
using System.Collections.Generic;
using maddox.game;
using maddox.game.world;


public class Mission : AMission
{

    #region MessageSystem

    private void sendScreenMessageTo(int army, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
                if (GamePlay.gpPlayer().Army() == army || army == -1)
                    Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1)
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if (GamePlay.gpPlayer().Army() == army || army == -1)
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1)
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendScreenMessageTo(int army, string playerlanguage, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if ((GamePlay.gpPlayer().Army() == army || army == -1) && GamePlay.gpPlayer().LanguageName().Equals(playerlanguage))
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if ((p.Army() == army || army == -1) && p.LanguageName().Equals(playerlanguage))
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string playerlanguage, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if ((GamePlay.gpPlayer().Army() == army || army == -1) && GamePlay.gpPlayer().LanguageName().Equals(playerlanguage))
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if ((p.Army() == army || army == -1) && p.LanguageName().Equals(playerlanguage))
                    Players.Add(p);
            }
        }
        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(int army, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        //Singleplayer or Dedi Server
        if (GamePlay.gpPlayer() != null)
        {
            if (GamePlay.gpPlayer().Army() == army || army == -1)
                Players.Add(GamePlay.gpPlayer());
        } // Multiplayer
        if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
        {
            foreach (Player p in GamePlay.gpRemotePlayers())
            {
                if (p.Army() == army || army == -1) 
                    Players.Add(p);
            }
        }

        foreach (string st in exepttoplayerlanguages)
        {
            Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }


    private void sendScreenMessageTo(int army, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();

        foreach (string st in exepttoplayerlanguages)
        {
            //Singleplayer or Dedi Server
            if (GamePlay.gpPlayer() != null)
            {
                if (GamePlay.gpPlayer().Army() == army || army == -1)
                    Players.Add(GamePlay.gpPlayer());
            } // Multiplayer
            if (GamePlay.gpRemotePlayers() != null || GamePlay.gpRemotePlayers().Length > 0)
            {
                foreach (Player p in GamePlay.gpRemotePlayers())
                {
                    if (p.Army() == army || army == -1)
                        Players.Add(p);
                }
            }
        }
        foreach (string st in exepttoplayerlanguages)
        {
            Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }


    private void sendChatMessageTo(Player player, string msg, object[] parms)
    {
        if (player != null)
            GamePlay.gpLogServer(new Player[] { player }, msg, parms);
    }


    private void sendScreenMessageTo(Player player, string msg, object[] parms)
    {
        if (player != null)
            GamePlay.gpHUDLogCenter(new Player[] { player }, msg, parms);
    }


    private void sendChatMessageTo(Player player, string playerlanguage, string msg, object[] parms)
    {
        if (player != null)
            if (player.LanguageName().Equals(playerlanguage))
                GamePlay.gpLogServer(new Player[] { player }, msg, parms);
    }


    private void sendScreenMessageTo(Player player, string playerlanguage, string msg, object[] parms)
    {
        if (player != null)
            if (player.LanguageName().Equals(playerlanguage))
                GamePlay.gpHUDLogCenter(new Player[] { player }, msg, parms);
    }
    
    
    private void sendChatMessageTo(Player player, string[] exepttoplayerlanguages, string msg, object[] parms)
    {

        List<Player> Players = new List<Player>();
        
        if (player != null)
            Players.Add(player);    
        
        foreach (string st in exepttoplayerlanguages)
        {
            if(Players != null)
                Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpLogServer(Players.ToArray(), msg, parms);
    }
 
   
    private void sendScreenMessageTo(Player player, string[] exepttoplayerlanguages, string msg, object[] parms)
    {
        List<Player> Players = new List<Player>();
        
        if (player != null)
            Players.Add(player);    
        
        foreach (string st in exepttoplayerlanguages)
        {
            if (Players != null)
                Players.RemoveAll(item => item.LanguageName().Equals(st));
        }

        if (Players != null && Players.Count > 0)
            GamePlay.gpHUDLogCenter(Players.ToArray(), msg, parms);
    }
    
    #endregion

}

Last edited by FG28_Kodiak; 10-12-2011 at 11:33 AM.
Reply With Quote
  #5  
Old 10-12-2011, 10:56 AM
Ataros Ataros is offline
Approved Member
 
Join Date: Jun 2010
Location: USSR
Posts: 2,439
Default

The 1st problem with errors is solved! The chat message was too long.
Thank you!

Quote:
Originally Posted by FG28_Kodiak View Post
Could it be that GamePlay.gpPlayer is the server on dedicated?
It can be. But I am joining the server as 3GIAP_Atas and do not get the message that server gets you can try it on R2 now. You will not receive the message probably.

Thanks, will test soon.

EDIT. Ah, 10 people are playing can not restart now ((.

Last edited by Ataros; 10-12-2011 at 10:58 AM.
Reply With Quote
  #6  
Old 10-12-2011, 10:59 AM
FG28_Kodiak FG28_Kodiak is offline
Approved Member
 
Join Date: Dec 2009
Location: Swabia->Bavaria->Germany
Posts: 884
Default

Ok i found out how to run a dedicated Server on my own Computer, so i can test it by my self
Reply With Quote
  #7  
Old 10-12-2011, 11:01 AM
Ataros Ataros is offline
Approved Member
 
Join Date: Jun 2010
Location: USSR
Posts: 2,439
Default

Quote:
Originally Posted by FG28_Kodiak View Post
Ok i found out how to run a dedicated Server on my own Computer, so i can test it by my self
Thanks! Edited the previous message saying that the 1st problem is solved. Chat message was too long.

BTW you can join your own dedicated server from the same PC with your client if you run the dedi via a shortcut (creating a windows shortcut for a dedi with -server in properties).
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:19 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.