I have questions for good world editors about my map.

Level 8
Joined
Jun 26, 2019
Messages
318
I have questions for good world editors about my new Battleships map. Any good world editors still out there? Somebody who knows how to build Battleships Crossfire, DOTA, Angel Arena, Line War Towers, Capture the Flag, Battle Tanks, Broken Alliances, or Horde vs Alliance. I need help with tigger systems.
 
Last edited:
Level 8
Joined
Jun 26, 2019
Messages
318
I mean, I am good at making tiggers, I created some tiggers for my Battleships map, and I think I am only one player that knows how to go faster than 522 max ground speed in map. But, I just need a world editor partner who I can talk to that knows the tigger system well. Because I need help how to make a tigger.

1. For hook from allied ship to enemy ship, and pull... the hook can only success through the sea, but if there's cliff or wall, the hook will stop there and the hook go back to allied ship, but couldn't reach enemy ship because it's behind cliff, or wall, or defense tower. Also, when the ship start throwing the hook, the ship need to be automatically stopped and don't move for until the hook comes back to its allied ship who threw the hook.

2. I am trying to make a Capture the Flag mode, carrying flag on allied ship and dodge enemy ships to the allied base to capture the flag from enemy base that stolen the enemy flag. Also, need the tigger for how many captured flags total in multiboard like kills and deaths total.

3. For each team can only have 2 same ships limit on each ship of all ships in the shop that buying new ships for the all time.

4. I need to make a bounty system like DOTA, that a allied player with assist from other allied ships to kill enemy ship, and share the bounty for killing on one enemy ship by 2 or more allied ships, with leaving the message on game that says "Allied Player killed Enemy Player." Plus, to make other bounty system for if a allied player killed 5 enemy players without dying, the bounty on head of allied player who killed 5 players without dying get 500 golds, and enemy players will go after the allied player's bounty head for 500 golds.
 

Dr Super Good

Spell Reviewer
Level 62
Joined
Jan 18, 2005
Messages
27,083
and I think I am only one player that knows how to go faster than 522 max ground speed in map
I am guessing periodically moving the ship with SetUnitX/Y? That is the well known method of exceeding the 522 speed limit, with the catch that path finding still only works reasonably up to around 1,000 odd and the player is not moving too many units at the same time.
1. For hook from allied ship to enemy ship, and pull... the hook can only success through the sea, but if there's cliff or wall, the hook will stop there and the hook go back to allied ship, but couldn't reach enemy ship because it's behind cliff, or wall, or defense tower. Also, when the ship start throwing the hook, the ship need to be automatically stopped and don't move for until the hook comes back to its allied ship who threw the hook.
Pause ship while hook triggers are running. Unpause ship when hook triggers are finished. For doodads (not destructables) and terrain one can use the function to test pathing to detect such collisions. If you want to factor in destructables and buildings as well then the usual approach is to move a dummy unit with the desired pathing of the hook and check if it gets displaced. If one just wants to detect collisions with cliffs and buildings one can check for changed in cliff height level and also check if any appropriate building unit is nearby the hook projectile.
2. I am trying to make a Capture the Flag mode, carrying flag on allied ship and dodge enemy ships to the allied base to capture the flag from enemy base that stolen the enemy flag. Also, need the tigger for how many captured flags total in multiboard like kills and deaths total.
One can extend an existing multiboard with an extra column or row depending on desired looks. Usually flags in capture the flag maps are implemented as items which are picked up and the holding unit has to enter a region for it to count as a score. When carrying unit dies it is either dropped on the ground or returned instantly depending on desired rules. When on the ground an enemy can either pick it up to continue moving it towards their goal or an ally to return it back to the pickup point. Upon entry into the enemy return point the flag is teleported back to the allied teams base to be ready for next steal.

Implementation wise one would track each flag status, reset point, hand in destination, and which team it belongs to. These could be arrays where each index represents a flag with there being 2 flags.
3. For each team can only have 2 same ships limit on each ship of all ships in the shop that buying new ships for the all time.
Use a hashtable to map unit type and team to a unit count. Unit types are integers and so can be used as a key of a hashtable lookup. Each team can be assigned a unique integer and hence be used as the other key of a hashtable lookup. This results in a unique storage location which can be used to track unit count. When a new ship is brought then the old ship type count is decremented, old ship removed and the new ship type count is incremented. When that count reaches the limit (2) then availability of the ship is removed. This can either be done by directly removing availability if possible (disable the unit availability for the players of the team) or by removing any extra copies of the ship that are brought while refunding the price and not removing the old ship.

Another approach to avoid the hashtable would be to count units of unit type using a unit group containing all player owned ships. This is slightly less efficient but might be easier to program. If using a static group then one has to remember to remove old ships from the group to prevent a potential leak.
4. I need to make a bounty system like DOTA, that a allied player with assist from other allied ships to kill enemy ship, and share the bounty for killing on one enemy ship by 2 or more allied ships, with leaving the message on game that says "Allied Player killed Enemy Player." Plus, to make other bounty system for if a allied player killed 5 enemy players without dying, the bounty on head of allied player who killed 5 players without dying get 500 golds, and enemy players will go after the allied player's bounty head for 500 golds.
Check spell section. Kill streak and reward systems are a fairly common request as they are widely used in maps.
 

Wrda

Spell Reviewer
Level 23
Joined
Nov 18, 2012
Messages
1,731
I don't know what kind of question is that, but yes we need how to make "trigger systems". But no one knows how to make the system exactly how you want it to be. So start by trying it to do it yourself and when you have questions, make them absolutely concrete and post them here. I don't know what's stopping you since you said it yourself:
I think I am only one player that knows how to go faster than 522 max ground speed in map.
 
Level 8
Joined
Jun 26, 2019
Messages
318
I found the share bounty system. I need help how to transfer it into my map and make it work into Battleships map and how do I turn off the "lost gold"? I don't want lost gold enabled. I want the bounty to be working like Battleships Crossfire. Check it out. For Battleships Crossfire, you need to have enemy player with your friend as teammate, 3 players total, to play this Battleships Crossfire to test out the share bounty for you to understand what I wanted to get, and then help me out how to make this work in Vile's assist system.
 

Attachments

  • VilesAssistanceSystem(v11.1).w3x
    46.8 KB · Views: 40
  • Battleships Crossfire4.64.w3x
    7.3 MB · Views: 66
Top