[H4 EDITOR] troubleshooting

Maps and the art of mapmaking.

Moderator: Moderators

furret
Leprechaun
Leprechaun
Posts: 17
Joined: 11 Jul 2008

Postby furret » Jul 11 2008, 13:06

Hello, I want to make a campaign with an option for two humen players - like in the scenario form. Anyway, it's not going so well. When I set both players as "humen player" it automaticly choose the first one of them and set the other as a computer player. Is there any way to set several humen players in a campain?
Another question (that's 2): Is there a way to cancle the factor that team players will see each other acts? I want the allys to not see each other.
Also (3): I put a gate with a quest requirement that let only orange players to pass. Can I do it without a gate? With only a placed event, saying, like: "We can't go from here"?

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Jul 11 2008, 17:45

@RobB: congratulations!!

@furret:
(1) Such an option wasn't present at first (and I should know), but I thought Equi made having more than 1 human campaigner possible. Not sure though.
(2) Not that I know of.
(3) Yes. You can have a placed event with a warning message for all players but orange. And another event a couple of tiles further with scripted combat against 9999 devils for example; or scripted loss. But it's not possible to have an invisible barrier for 1 player that is passable for another. But why not stick to a quest gate, allowing only orange to pass? That's much more clear to players.
Are you suggesting coconuts migrate?

furret
Leprechaun
Leprechaun
Posts: 17
Joined: 11 Jul 2008

Postby furret » Jul 12 2008, 18:58

Thanks wimfrits and... rats! The whole "genious" idea of my campaign was to show a one story from several points of view. Even if Equi did make a function that allow campaign of more then 1 humen player - they'll see each other!
But if he did - where can I find it? I looked at the site's downloads and didn't see it there.

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Jul 13 2008, 9:29

furret wrote:Thanks wimfrits and... rats! The whole "genious" idea of my campaign was to show a one story from several points of view. Even if Equi did make a function that allow campaign of more then 1 humen player - they'll see each other!


Do you intend to have it played by 2 players cooperatively or by 1 player that can choose with which side to play?
If it is the latter, you can have the player choose at the start of the first map. Let's say red is the player color and green is the allied computer player. Red and green's towns and armies could start green, red could have a single temporary army to start the map with, at the start of day 1 the player is asked which side to play and depending on his choice, several of the green towns and heroes switch to red player ownership.
Choice is stored in a carryover variable and in subsequent maps, the same player color initialisation is done on day 1.

But if he did - where can I find it? I looked at the site's downloads and didn't see it there.


I don't know. I only know I read it on the forum a long time ago and that I thought "Darn. That was the option I was looking for while making my 2 player campaign. Well, too late now."
Are you suggesting coconuts migrate?

User avatar
Koni
Round Table Hero
Round Table Hero
Posts: 2588
Joined: 06 Jan 2006
Location: Teutonic Magetower

Postby Koni » Sep 4 2008, 12:32

May I ask you cracks another question. It is to the quest gates (not guards). I always write a Site name, a quest-log entry, a proposal message, a progress message and the quest-requirements, but only sometimes a Triggered Script. I wonder why the quest-log-entry isn't deleted in my Scenario-Information Quest-Log-Entry everytime. Some entries disappear, others do not. What must I do, that an entry always is taken away?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Nov 29 2008, 0:17

Hi, I'd like to ask a question. I am currently making a map where a hero is required to be defeated in order to remove a bunch of adventure objects (walls) to continue on with the adventure. I decided to do the following:

--> I click on this certain hero's army (blue player) and then click "Events." Under "Standard Events" and "Defeated", for the General Stuff I removed the check beside 'Event Occuring if current player is Computer'-esque thing and on Script, I used Sequence:

1. Display Message
2. Delete Adventure Objects marked under (Name of the Bomb Editor)
3. Remove Script

I decided to test out this map using cheats to get a massive army. However, when about 80 black dragons defeated this hero, the structure that was supposed to be deleted by the Bomb Editor was still there, and none of the messages that I displayed under the Scripting appeared. Help?

Edit: Ah, ne'er mind this. I figured out how to do the same as above, but just using a Continuous event scripting from the Map Properties itself. :D

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Dec 4 2008, 2:00

I have three more questions to ask. Would anyone be kind enough to give me some advice?

1. How do you make the quest requirement for a certain quest hut to be that six other quests have been completed?

2. How do you utilize Placed or Continuous Events to make objects (such as mountains) appear out of nowhere? I'm not sure if this is possible, but I do vaguely remember something of the sort in another map before.

3. What is the point of Triggerable Events?

Thanks.

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Dec 4 2008, 18:36

Mark_XXVI wrote:1. How do you make the quest requirement for a certain quest hut to be that six other quests have been completed?

2. How do you utilize Placed or Continuous Events to make objects (such as mountains) appear out of nowhere? I'm not sure if this is possible, but I do vaguely remember something of the sort in another map before.

3. What is the point of Triggerable Events?


1. One option is to use a numeric variable. Raise the value of the variable by 1 in the completion script of the 6 quest huts ('variable = variable + 1'). The quest requirement of the master quest hut would then be 'numeric variable = 6'

2. You can't make objects appear. You can fake appearance of objects by for instance conceiling them under a mountain and remove the mountain.

3. Triggerable or custom events on adventure map objects are quite commonly used and are triggered from another script. You can for instance have a placed event that when triggered, triggers a triggerable combat script on a distant town.

Triggerable events in the map properties menu have less use, but can be useful in specific cases, for instance for generic scripts that need to be triggered multiple times but have no direct influence on an adventure map object.
Are you suggesting coconuts migrate?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Dec 5 2008, 1:35

Okay, thanks for the tips. For my current map, I won't use any of those suggestions that you made above, but they will surely come in handy in the future.

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Dec 11 2008, 5:26

I'm once again in a bit of a fix here....

Imagine the following situation. You have a quest hut and two gates. When you enter the quest hut, it will ask you a question. Depending on your answer:

--> Yes = Lets you pass through the first gate
--> No = Lets you pass through the second gate.

You can then keep alternating between yes and no each time you enter the Quest Hut to pass through either the first gate, or the second gate, but never both at the same time. How can you make this situation possible?

My current opinion on this matter is to make the Quest Requirement for the first gate to be "False," and the second to be "True", but how you can make the Quest Hut correspond to that, I don't know. Any help would be great.

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Dec 11 2008, 18:39

From what you wrote previously, I'm not sure if you understand the way variables work. But if you want to effectively connect map objects and events, you do need to use them.

Variables can be either numeric or boolean (true/false)

For your situation, you could use a boolean variable, which you could for instance name GateSwitch. Quest requirement for Gate1 would then be GateSwitch = FALSE and for Gate2 it would be GateSwitch = TRUE

This has the downside that Gate1 is already passable when the player has never visited the quest hut; don't know if you want that. If not, it is easy to use 2 seperate boolean variables (1 for each quest hut) or 1 numeric variable - for instance nGate where the requirements for Gate1 and Gate2 could be nGate = 1 and nGate = 2.

With 1 GateSwitch variable, the quest hut would be set up like this:
on the Triggered script tab (!!) you would have the following script:
ASK QUESTION "Do you wish to pass the first gate?"
- YES: SET BOOLEAN TRUE/FALSE VARIABLE GateSwith TO False
- NO: SET BOOLEAN TRUE/FALSE VARIABLE GateSwith TO True


When using a numeric variable, script could be:
ASK QUESTION "Do you wish to pass the first gate?"
- YES: SET NUMERIC VARIABLE nGate TO 1
- NO: SET NUMERIC VARIABLE nGate TO 2


Note that the triggered script tab of a quest hut allows unlimited triggering. This script will never be removed unless it is specifically removed with the Remove Script action or when the quest hut itself is blown up.
Are you suggesting coconuts migrate?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Dec 11 2008, 21:16

Sorry, I'm actually just a beginner mapmaker. But that did help a lot, thanks again.

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Dec 20 2008, 5:08

Just a quick question:

If you're going to make a Quest Requirement to be that you have 3 of the same artifacts, say, three Maranthea's Mugs, then would: Has Artifact --> List the same artifact 3 times work?

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Dec 20 2008, 7:14

I don't think there is a list option, but if there is, please let me know. The normal way of checking multiple artifacts that I know of is stringing several HAS ARTIFACT statements toegether with AND statements. Which basically is the same as a list.

I think however that in such a setup, with 3 checks on having the mug, 1 mug will simply be counted 3 times. So I don't think there is an easy way to do this.

An option would be to have the check in the triggered tab of the quest hut and then construct a loop that keeps on checking for a mug and then removing it until there are no more mugs present; then store the number of mugs found in a variable; then return the taken away mugs by another loop. But that's a rather complex setup, with the downside that there is no guarantee that artifacts will be returned to the same unit in an army that they were taken from (i.e. artifacts may be redistributed)

So it would be a lot easier to check for 3 different artifacts ;)
Are you suggesting coconuts migrate?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Jan 19 2009, 2:39

I want to create a scripting like this:

If "Teal Player" owns "Castle A", then "2 Thunderbirds" come to "Castle A" every week (without the need of recruiting the 2 Thunderbirds).

Specifically, I want to make it so that 2 Thunderbirds arrive into Castle A's garrison every week only when Castle A is owned by Teal Player. How do you create this scripting?

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Jan 19 2009, 18:34

The simple (but not too transparent) way would be to have a timed event with the checkbox for 'repeating every day' selected on Castle A with a conditional action:
IF OWNER IS Teal
-- GIVE CREATURES 2 thunderbirds
END IF


But I think the scripting structure in a map should be as transparent as possible (so that the mapmaker always remains in control of his scripting) and I think the main scenario properties should be the 'control panel' so to speak.
So a better setup imo would be:
1. a triggerable/custom event on Castle A "Thunderbird_Reinforcement"
IF OWNER IS Teal
-- GIVE CREATURES 2 thunderbirds
END IF


2. and a timed event repeating every day under scenario properties:
TRIGGER CUSTOM EVENT Thunderbird_Reinforcement
Are you suggesting coconuts migrate?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Jan 22 2009, 1:18

This may sound a bit stupid, but I want my scriptings to be 100% accurate and so I must ask......how exactly do you say "If Owner is Teal" in your castle's Timed Event?

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Jan 22 2009, 18:37

Good question. It's been a while since I last browsed through scripts and as I don't have H4 installed on this pc and will leave for a week on skis tomorrow, I'm afraid I can't give an accurate answer.

It starts with CONDITIONAL ACTION; of that I'm sure. I thought the condition then was PLAYER IS CERTAIN COlOR and then select OWNER and TEAL. But I'm not sure.
Are you suggesting coconuts migrate?

User avatar
Mark_XXVI
Leprechaun
Leprechaun
Posts: 12
Joined: 29 Nov 2008

Postby Mark_XXVI » Jan 25 2009, 19:12

Well, not sure where this question should go, but.....

If you have a map up for testing (although I've already tested it myself), where do you send it to? I've tried sending one to staff@celestialheavens.com but no reply for about three days.

User avatar
wimfrits
Round Table Knight
Round Table Knight
Posts: 1959
Joined: 06 Jan 2006
Location: Utrecht, the Netherlands

Postby wimfrits » Feb 1 2009, 16:31

Did the map show up the maptesting page? Perhaps the CH staff missed it.

An other option would be to ask friends to do some testing. Or ask people on the forum.
Are you suggesting coconuts migrate?


Return to “Mapmaking Guild”

Who is online

Users browsing this forum: No registered users and 1 guest