[ECS3] Suggestions & Questions

Users who are viewing this thread

Status
Not open for further replies.
trot888 said:
Or just practice your buying?, if the idiot can't pick the right equipment *insert Fietta spear joke here* then they shouldn't be playing the game. Good players spend time picking their equipment wisely and fast.. so then newbs can just instantly get it anyways :sad:
Only thing we can agree on. Also, downloading some mod wont make you a better player and it might help you spawn in faster but I dont see that helping so much xd unless it gives you magical flying and health hacks with a hint of aimbot? I doubt half the player in the tourney would even download this anyway including me.
 
trot888 said:
Or just practice your buying?, if the idiot can't pick the right equipment *insert Fietta spear joke here* then they shouldn't be playing the game. Good players spend time picking their equipment wisely and fast..
So cs players are idiots?
 
AnchorTheMean said:
It actually does give an advantage. This depends on the map ofc, but on Naval Outpost for example this will give a huge 1st round advantage.

And maps like Sandi where a cav can get to the other side of the map in under 10 seconds and lance a player just spawning.
 
Alene suggested a server side mod to have everyone spawn delayed, so there is enough time to select equipment for everyone. Both for people with an equipment selector and for those that do it manually.
At no point in this is Alene suggesting a personal advantage.

Speaking of CS GO... it does just that.
 
imemine said:
I mean a football match doesn't include putting on your shoes and jersey either.

I would love to see that though !  :party:

Alene said:
The speed advantage could be nullified with server side mod that would delay the spawn from everyone.

This is a really good idea, i mean 10 seconds should be more then enough.
This would also solve the problem you have for example when u fight after round end and you cant upgrade because the next round instantly starts.
Maybe a bit late for ECS, but if the still update their adminmods on their server they should put a serious thought towards implenting it, because it improves general competitivness for battle.

Prince Apollo said:
I play csgo alot, You dont need a macro to be a good player. Its not hard to select a weapon and armour and just play. Same in Warband.

Dude you shot yourself in the knee with that , in CSGO you have 15 seconds before each round right ? :wink:
 
Firunien said:
This is a really good idea, i mean 10 seconds should be more then enough.
This would also solve the problem you have for example when u fight after round end and you cant upgrade because the next round instantly starts.
Maybe a bit late for ECS, but if the still update their adminmods on their server they should put a serious thought towards implenting it, because it improves general competitivness for battle.

This!
 
Alene said:
The speed advantage could be nullified with server side mod that would delay the spawn from everyone.

I already wrote this two days back.
It's fully server side. Players spawn the same time on the first round (after map reset).
Even tho i'm not too experienced with scripts i made it to work. Here's the code, try it out.

In module_mission_templates.
Seek the #battle section, there's a script which handles agent spawning. In pure native should be found at line 12947.
You need to add one line into that script. Here's the full script with added line, tagged with #Delay the first spawn.
Code:
      (1, 0, 0, [],
       [
         (multiplayer_is_server),
         (get_max_players, ":num_players"),
         (try_for_range, ":player_no", 0, ":num_players"),
           (player_is_active, ":player_no"),
           (neg|player_is_busy_with_menus, ":player_no"),
           (try_begin),
             (player_slot_eq, ":player_no", slot_player_spawned_this_round, 0),

             (player_get_team_no, ":player_team", ":player_no"), #if player is currently spectator do not spawn his agent
             (lt, ":player_team", multi_team_spectator),

             (player_get_troop_id, ":player_troop", ":player_no"), #if troop is not selected do not spawn his agent
             (ge, ":player_troop", 0),

             (assign, ":spawn_new", 0), 
             (assign, ":num_active_players_in_team_0", 0),
             (assign, ":num_active_players_in_team_1", 0),
             (try_begin),
               (assign, ":num_active_players", 0),
               (get_max_players, ":num_players"),
               (try_for_range, ":player_no_2", 0, ":num_players"),
                 (player_is_active, ":player_no_2"),
                 (val_add, ":num_active_players", 1),
                 (player_get_team_no, ":player_team_2", ":player_no_2"),
                 (try_begin),
                   (eq, ":player_team_2", 0),
                   (val_add, ":num_active_players_in_team_0", 1),
                 (else_try),
                   (eq, ":player_team_2", 1),
                   (val_add, ":num_active_players_in_team_1", 1),
                 (try_end),
               (try_end),

               (store_mul, ":multipication_of_num_active_players_in_teams", ":num_active_players_in_team_0", ":num_active_players_in_team_1"),

               (store_mission_timer_a, ":round_time"),
	       #Delay the first spawn 
	       (ge, ":round_time", 16),
	       #
               (val_sub, ":round_time", "$g_round_start_time"),

               (this_or_next|lt, ":round_time", multiplayer_new_agents_finish_spawning_time),
               (this_or_next|le, ":num_active_players", 2),
               (eq, ":multipication_of_num_active_players_in_teams", 0),
         
               (eq, "$g_round_ended", 0),
               (assign, ":spawn_new", 1),
             (try_end),
             (eq, ":spawn_new", 1),
             (try_begin),
               (eq, ":player_team", 0),
               (assign, ":entry_no", multi_initial_spawn_point_team_1),
             (else_try),
               (eq, ":player_team", 1),
               (assign, ":entry_no", multi_initial_spawn_point_team_2),
             (try_end),
             (call_script, "script_multiplayer_buy_agent_equipment", ":player_no"),
             (player_spawn_new_agent, ":player_no", ":entry_no"),
             (player_set_slot, ":player_no", slot_player_spawned_this_round, 1),
           (else_try), #spawning as a bot (if option ($g_multiplayer_player_respawn_as_bot) is 1)
             (eq, "$g_multiplayer_player_respawn_as_bot", 1),
             (player_get_agent_id, ":player_agent", ":player_no"),
             (ge, ":player_agent", 0),
             (neg|agent_is_alive, ":player_agent"),
             (agent_get_time_elapsed_since_removed, ":elapsed_time", ":player_agent"),
             (gt, ":elapsed_time", "$g_multiplayer_respawn_period"),

             (player_get_team_no, ":player_team", ":player_no"),
             (assign, ":is_found", 0),
             (try_for_agents, ":cur_agent"),
               (eq, ":is_found", 0),
               (agent_is_alive, ":cur_agent"),
               (agent_is_human, ":cur_agent"),
               (agent_is_non_player, ":cur_agent"),
               (agent_get_team ,":cur_team", ":cur_agent"),
               (eq, ":cur_team", ":player_team"),
               (assign, ":is_found", 1),
               #(player_control_agent, ":player_no", ":cur_agent"),
             (try_end),

             (try_begin),
               (eq, ":is_found", 1),
               (call_script, "script_find_most_suitable_bot_to_control", ":player_no"),
               (player_control_agent, ":player_no", reg0),

               (player_get_slot, ":num_spawns", ":player_no", slot_player_spawned_this_round),
               (val_add, ":num_spawns", 1),
               (player_set_slot, ":player_no", slot_player_spawned_this_round, ":num_spawns"),
             (try_end),
           (try_end),
         (try_end),
         ]),

Also you need to add script to delay the actual round time as well so that it doesn't run before players spawn.
I made it by adding following script above the previous one:

Code:
#round time counter delay BEGIN	   
      (0, 0, 0, [], #Do not reduce round time before players spawn.
       [
         (multiplayer_is_server),
         (try_begin),
            (store_mission_timer_a, ":seconds_past_since_round_started"),
	    (le, ":seconds_past_since_round_started", 16),
            (store_mission_timer_a, "$g_round_start_time"),     
            (get_max_players, ":num_players"),
            (try_for_range, ":player_no", 0, ":num_players"),
              (player_is_active, ":player_no"),
              (multiplayer_send_int_to_player, ":player_no", multiplayer_event_set_round_start_time, -9999), #this will also initialize moveable object slots.
            (try_end),      
         (try_end),
       ]),  
#round time counter delay END

EDIT: sry there was still one fault line there, edited it now.. Kinda posted this in rush
 
Status
Not open for further replies.
Back
Top Bottom