RPG help

SickSailer

New Member
Reaction score
1
Hello I am quite new to map making and I am making a RPG I'm having quite a few problems with quest triggers eg. Satyrs killed 1/10, then it goes up to 6/10 then just stops.

Basicly you choose Orc, Night elf, Human or Undead as your starting character ( Only Orc and Night Elf have been added atm ) then once you reach level 20 (not confirmed yet) you pick an upgrade of your character eg Orc-Beserker or Shaman. I have almost finished my first town, the town of Antrich and just started my second, the city of Gorth. I hope at the end there are going to be plenty of dungeons and quests to do but I just need some help to get it up and running

So can you please help me by just posting here and what you can do, and I'll PM you the link to my map. Like I said I's very new and under construction.



thanx SickSailer
 

SickSailer

New Member
Reaction score
1
Trigger:
  • Events
    • Unit - Goblin Merchant 0041 <gen> Sells an item (from shop)
    • Conditions
    • Actions
      • Quest - Create a Optional quest titled Satyr Quest with the description These things are ge..., using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
      • Quest - Mark Quest as Discovered
      • Quest - Flash the quest dialog button
      • Game - Display to (All players) the text: These things are ge...


first thing is I want the condition to be connnected to an item sold by a shop... I tried that but the item doesn't do anything

Trigger:
  • Events
    • Unit - A unit Dies
    • Conditions
      • ((Last created quest) is enabled) Equal to True
      • ((Unit-type of (Triggering unit)) Equal to (Unit-type of Satyr 0005 <gen>)) or ((Unit-type of (Triggering unit)) Equal to (Unit-type of Satyr Shadowdancer 0016 <gen>))
    • Actions
      • Set Satyr_Kills = (Satyr_Kills + 1)
      • Game - Display to (All players) for 3.00 seconds the text: (((String(Satyr_Kills)) + /10) + Satyrs Killed)
      • If (Satyr_Kills Equal to 10) then do (Game - Display to (All players) the text: Pah, you think that...) else do (Do nothing)


this is the one that glitches up between 6 and 8 kills

Trigger:
  • Events
    • Unit - A unit enters Rob <gen>
    • Conditions
      • (Owner of (Entering unit)) Equal to Player 1 (Red)
      • Satyr_Kills Greater than or equal to 10
    • Actions
      • Hero - Add 500 experience to (Triggering unit), Show level-up graphics
      • Player - Add 475 to Player 1 (Red) Current gold
      • Quest - Mark (Last created quest) as Completed


this is the reward part... got one for each player eg. (Owner of (Entering unit)) Equal to Player 1 (Red)-(Owner of (Entering unit)) Equal to Player 2 (blue)

Player - Add 475 to Player 1 (Red) Current gold-Player - Add 475 to Player 2 (blue) Current gold

so like I said you might want to download the map to see whats wrong for sure

thanx.
 

X-maul

AKA: Demtrod
Reaction score
201
These triggers will give a quest for an individual player and create quest progress for individual players:
Code:
Give Quest - [COLOR="Red"]Initially On[/COLOR]
    Events
        Unit - No unit Sells an item (from shop)
    Conditions
        (Sold Item) Equal to [COLOR="RoyalBlue"][U]Your Item[/U][/COLOR]
    Actions
        Set Boolean[(Player number of (Owner of (Hero manipulating item)))] = False
        Quest - Create a Required quest titled Kill Satyrs with the description (Satyrs Killed:  + ((String(Integer[(Player number of (Owner of (Hero manipulating item)))])) + /10)), using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
        Set QuestVariable = (Last created quest)
        Trigger - Turn on Kill Satyrs <gen>
        Trigger - Turn off (This trigger)
Code:
Kill Satyrs - [COLOR="Red"]Initially Off[/COLOR]
    Events
        Unit - A unit Dies
    Conditions
        (Unit-type of (Triggering unit)) Equal to Satyr
    Actions
        Set Integer[(Player number of (Owner of (Killing unit)))] = (Integer[(Player number of (Owner of (Killing unit)))] + 1)
        Game - Display to (Player group((Owner of (Killing unit)))) the text: (Satyrs Killed:  + ((String(Integer[(Player number of (Owner of (Killing unit)))])) + /10))
        Quest - Change the description of QuestVariable to (Satyrs Killed:  + ((String(Integer[(Player number of (Owner of (Killing unit)))])) + /10))
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                Integer[(Player number of (Owner of (Killing unit)))] Equal to 10
            Then - Actions
                Set Boolean[(Player number of (Owner of (Killing unit)))] = True
                Trigger - Turn off (This trigger)
            Else - Actions
Code:
Finish Quest - [COLOR="Red"]Initially On[/COLOR]
    Events
        Unit - A unit enters [COLOR="RoyalBlue"][U]Your Region[/U][/COLOR]
    Conditions
        Boolean[(Player number of (Owner of (Triggering unit)))] Equal to True
    Actions
        Hero - Add 500 experience to (Triggering unit), Show level-up graphics
        Player - Add 475 to (Owner of (Triggering unit)) Current gold
        Quest - Mark QuestVariable as Completed
        Trigger - Turn off (This trigger)
You can change it to work for all players at one time if you want to.

EDIT: forgot to set the boolean to false first ;)
 

SickSailer

New Member
Reaction score
1
thanx!!!

but I'm still quite noob with WE... how do I do
Trigger:
  • Set Integer[(Player number of (Owner of (Killing unit)))] = (Integer[(Player number of (Owner of (Killing unit)))] + 1)
    • Game - Display to (Player group((Owner of (Killing unit)))) the text: (Satyrs Killed: + ((String(Integer[(Player number of (Owner of (Killing unit)))])) + /10))
    • Quest - Change the description of QuestVariable to (Satyrs Killed: + ((String(Integer[(Player number of (Owner of (Killing unit)))])) + /10))
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • Integer[(Player number of (Owner of (Killing unit)))] Equal to 10
      • Then - Actions
        • Set Boolean[(Player number of (Owner of (Killing unit)))] = True
        • Trigger - Turn off (This trigger)


I mainly struggle with the variables like the

Trigger:
  • Set Integer[(Player number of (Owner of (Killing unit)))] = (Integer[(Player number of (Owner of (Killing unit)))] + 1)
 

X-maul

AKA: Demtrod
Reaction score
201
I've saved the map with the triggers, but I've not done anything to the map, only the triggers and that one region.

(Just copy-paste the whole "Initialization" folder into your map)
 

SickSailer

New Member
Reaction score
1
thanx bra it's working so well now :D... can you help me with 1 more thing please. I want to make a dungeon similair to Twilights eve ORPG eg you walk up to a gate (region) and type -enter then you teleport to the dungeon. I'm having trouble with getting the 2 events to work together
Trigger:
  • Events
    • Player - Player 1 (Red) types a chat message containing -enter as An exact match


and

Trigger:
  • Events
    • Unit - A unit enters Matter Shifter Dungeon &lt;gen&gt;



I so far have 2 triggers but I'm not that great at triggering.... :(

Trigger 1

Trigger:
  • Events
    • Unit - A unit enters Matter Shifter Dungeon &lt;gen&gt;
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
    • Actions
      • Trigger - Turn on Matter Shifter enter &lt;gen&gt;


Trigger 2

Trigger:
  • Events
    • Player - Player 1 (Red) types a chat message containing -enter as An exact match
    • Conditions
    • Actions
      • Unit - Move (Triggering unit) instantly to (Center of Matter Shifter Entrance &lt;gen&gt;)


thanx, you don't have to make a whole mpa for me but can you just tell me where I am wrong, I think it is the (triggering unit)
in

Trigger:
  • Unit - Move (Triggering unit) instantly to (Center of Matter Shifter Entrance &lt;gen&gt;)
 

Mahrloc

New Member
Reaction score
5
use player types chat message and check if the unit is in the area with an if

/edit: e.g.:
Trigger:
  • Enter Dungeon
    • Event
      • Player - Player types a chat message containing -enter
    • Conditions
      • ((Region) contains (Hero[Player number of (triggering player)])) Equal to True
    • Actions
      • Unit - Move (Hero[Player number of (triggering player)]) instantly to (Center of (Next Region))
 

SickSailer

New Member
Reaction score
1
getting confused with

Trigger:
  • ((Region) contains (Hero[Player number of (triggering player)])) Equal to True


can you tell me how to do that please... what type of comparision is it???
 

X-maul

AKA: Demtrod
Reaction score
201
I've made a little map for you again :)

(btw pls remember the +rep:thup:)


NOTE:
Code:
Enter Dungeon
    Events
        Player - Player 1 (Red) types a chat message containing -enter as An exact match
        Player - Player 2 (Blue) types a chat message containing -enter as An exact match
        Player - Player 3 (Teal) types a chat message containing -enter as An exact match
        [COLOR="Red"](put as many players here as you want (one for each player))[/COLOR]
    Conditions
        BooleanEnter[(Player number of (Triggering player))] Equal to True
    Actions
        Set TempUnitGroup = (Units in Enter Dungeon Reg <gen> owned by (Triggering player))
        Set TempPoint = (Center of Dungeon Reg <gen>)
        Camera - Pan camera for (Triggering player) to TempPoint over 0.00 seconds
        Unit Group - Pick every unit in TempUnitGroup and do (Actions)
            Loop - Actions
                Unit - Move (Picked unit) instantly to TempPoint
        Custom script:   call RemoveLocation(udg_TempPoint)
        Custom script:   call DestroyGroup(udg_TempUnitGroup)
        Trigger - Turn off (This trigger)
 

SickSailer

New Member
Reaction score
1
Worked well thanx.... but (lol always a but) when I type -enter then -leave I go in then out, but then when I try -enter again it does nothing. Do you know why??

in other words My hero is on normal land, -enter, then in dungeon,-leave, then out dungeon but I try -enter again and it does nothing...

and (btw pls remember the +rep) lol does that mean I must put you in creds??? :O

yes i know I'm very noob and I need help

thanx
 

X-maul

AKA: Demtrod
Reaction score
201
Worked well thanx.... but (lol always a but) when I type -enter then -leave I go in then out, but then when I try -enter again it does nothing. Do you know why??

in other words My hero is on normal land, -enter, then in dungeon,-leave, then out dungeon but I try -enter again and it does nothing...

and (btw pls remember the +rep) lol does that mean I must put you in creds??? :O

yes i know I'm very noob and I need help

thanx
hehe np ;) you dont need to give me credit - you need to give me +rep for helping you, if you thought my help was useful: click this icon
attachment.php

and for the bug, I just noticed:
Code:
Enter Dungeon
    Events
        Player - Player 1 (Red) types a chat message containing -enter as An exact match
        Player - Player 2 (Blue) types a chat message containing -enter as An exact match
        Player - Player 3 (Teal) types a chat message containing -enter as An exact match
    Conditions
        BooleanEnter[(Player number of (Triggering player))] Equal to True
    Actions
        Set TempUnitGroup = (Units in Enter Dungeon Reg <gen> owned by (Triggering player))
        Set TempPoint = (Center of Dungeon Reg <gen>)
        Camera - Pan camera for (Triggering player) to TempPoint over 0.00 seconds
        Unit Group - Pick every unit in TempUnitGroup and do (Actions)
            Loop - Actions
                Unit - Move (Picked unit) instantly to TempPoint
        Custom script:   call RemoveLocation(udg_TempPoint)
        Custom script:   call DestroyGroup(udg_TempUnitGroup)
        [COLOR="Red"]Trigger - Turn off (This trigger)[/COLOR]
remove the red marked action, in both enter and leave trigger - dont know why i put that in xD
 

X-maul

AKA: Demtrod
Reaction score
201
that's the reason. i actually don't understand why you have put it there...^^

/edit: k, you were faster ^^
oh, now I remember why I put it there, I first made a trigger which turned on off the trigger when you entered and leaved the region, but then found a boolean better duo to the fact its MUI ;)

and then I forgot to remove it again :b
 

SickSailer

New Member
Reaction score
1
so if I want to make another dungeon... do I have to make new variables or just change the regions???
 

X-maul

AKA: Demtrod
Reaction score
201
so if I want to make another dungeon... do I have to make new variables or just change the regions???
well you did double post, but never mind, just keep in mind - you will have to create a new pair of Booleans - just name the ones you got the name of your dungeon and then 1 for enter and 2 for leave, so if your dungeon is named Wolf Forrest" then you name your booleans "Wolf_Forrest_1" and "Wolf_Forrest_2".
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top