Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

[General] Near sight

Discussion in 'World Editor Help Zone' started by Marebre, Jul 11, 2016.

  1. Marebre

    Marebre

    Joined:
    Mar 31, 2015
    Messages:
    27
    Resources:
    1
    Spells:
    1
    Resources:
    1
    What I want: A reveal spell like Far Sight, but that can only be cast on part of the map which is already explored.

    What use is that spell: It reveals invisible units.

    Why Far Sight doesn't work: I'm making dungeon-crawler sort of map. And I want players to use Far-Sight-like ability to scout for hidden enemies and traps, but not hidden rooms and passages.

    In other words: I want an AoE spell which reveals hidden units, but that can not be used to reveal black mask.

    What I tried: Playing with Far Sight (AOfs), Item Area Detection (Alta), and of course the old, tried-and-tested method of Channel + Triggers. The problem is, all of these can be cast on Black Mask.
     
  2. Alok

    Alok

    Joined:
    Sep 6, 2015
    Messages:
    576
    Resources:
    17
    Models:
    6
    Icons:
    4
    Maps:
    3
    Tutorials:
    4
    Resources:
    17
    You would have to create a custom Blink ability that does nothing, except that it summons a Sentry Ward at the target location, since Blink is one of the spells I can think of which can be cast only on explored areas, and Sentry Ward won't show units behind walls or obstacles.

    This is how it's done:

    1. Alter the Blink ability and the Sentry Ward unit and its spells to your liking, how you want them to perform.

    2. You'll need a trigger like this to create a Sentry Ward where Blink is cast, to stop Blink from teleporting the unit that casts it, and to make Sentry Ward expire after some time:

    • Untitled Trigger 001
      • Events
      • Unit - A unit Starts the effect of an ability
      • Conditions
      • (Ability being cast) Equal to Blink
      • Actions
      • Set point = (Target point of ability being cast)
      • Unit - Create 1 Sentry Ward for (Owner of (Triggering unit)) at (Target point of ability being cast) facing Default building facing degrees
      • Custom script: call RemoveLocation(udg_point)
      • Unit - Order (Triggering unit) to Stop
      • Unit - Add a 10.00 second Generic expiration timer to (Last created unit)

    Here's the test map in the attachment for you to see, test and copy all of this:
     

    Attached Files:

    Last edited: Jul 12, 2016
  3. Alright

    Alright

    Joined:
    May 20, 2014
    Messages:
    230
    Resources:
    0
    Resources:
    0
    Why not use a generic unit expiration instead of wait, or you could get a dummy to cast a sentry ward that would have an expiration timer built in it.

    Nice creativity with blink though. Although if he tries to blink on unexplored terrain or something alike he would get a warning exclusively telling him he can't blink there. Might want to change that in game interface as well.
     
  4. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    26,128
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    Why go through the effort when people can just iseedeadpeople or look at the terrain to see the hidden rooms and then use that knowledge in multiplayer? Or are the hidden rooms randomly generated?
     
  5. Emm-A-

    Emm-A-

    Joined:
    Jul 1, 2008
    Messages:
    1,312
    Resources:
    0
    Resources:
    0
    doesnt it make sense to provide a method independently of cheating? :p

    @ Thread:

    maybe you could use channel and then check the target location. Then use
    • ((Target Point)) is masked for Player 1 (Red)) Equal to (==) false

    to see, whether the area was already explored?

    If this is not working, you can still try Aloks method and add Alrights modification to any unit rather than using waits :)
     
  6. Alok

    Alok

    Joined:
    Sep 6, 2015
    Messages:
    576
    Resources:
    17
    Models:
    6
    Icons:
    4
    Maps:
    3
    Tutorials:
    4
    Resources:
    17
    I updated the trigger in my post and test map with a unit expiration timer, and it works fine now.
    It looks I'm still missing some important trigger actions/events/conditions in my knowledge of the World Editor.
    The message is, as far as I could see, "Must explore there first.", so there is no problem with that.
     
  7. Marebre

    Marebre

    Joined:
    Mar 31, 2015
    Messages:
    27
    Resources:
    1
    Spells:
    1
    Resources:
    1
    Wow, you didn't really have to make a test map since you explained in enough detail, but you did, so have some reputation. Thanks for the suggestion, it works (obviously), only trouble being that since I force-stop Blink cooldown doesn't go off. But there are ways of dealing with that...

    They can cheat... or they can ask a friend who already played... or they can replay map and use that knowledge... or they can increase gamma... or some other "clever" way to spoil the game for themselves. It's not really my problem, is it?

    Exploration is major part of in dungeon crawlers (along with killing creeps and looting), and the purpose of exploration is to deliberately not know.


    Tried that, but it doesn't work for edges (black areas along the edge of hidden part of the map, which should be masked, act as they are visible).
     
  8. Alok

    Alok

    Joined:
    Sep 6, 2015
    Messages:
    576
    Resources:
    17
    Models:
    6
    Icons:
    4
    Maps:
    3
    Tutorials:
    4
    Resources:
    17
    No problem. I had to test it before posting and make the trigger for copying here. It is fast to make and also saves some extra time needed for additional explanations in these kinds of threads and helps the people who need a solution. Thanks for the reputation.