Lonely Era (first release available for 1.12)

It's not easy creating an entire faction or era. Post your work and collaborate in this forum.

Moderator: Forum Moderators

User avatar
Shield
Posts: 59
Joined: January 23rd, 2011, 5:58 pm

Re: Lonely Era (first release available for 1.12)

Post by Shield »

Ravana wrote:1) [wml_filter] -> [filter_wml]
Just tested this. Unfortunately, adjacent allies still are neither given berserk or slowed. However, the Eirson's own berserk attack is working just fine now, which means I've done something right.
GL_Network wrote:For the herbalist special, I'm worried that it does nohing as it is. The event filters the unit based on its id, not on whether it has the special or not. Fixing this will make it easier to maintain the WML code.
That sounds plausible! Most abilities and specials are based on whether or not they have it, not who has it. But, like I said, I'm pretty unfamiliar with using variables, and may not be able to puzzle out an ability so strange as this one.
Ravana wrote:2) I do not support overuse of [message] at all. There are alternatives that do not stall game. However, it is likely that adding id to these events will fix it.
Alternatives sound interesting, if there are any. Although I know more about [message], it does take up lots of space. Where would I put this "id," and how would this fix it?
Constant amount of repetitions suggests that the macro is loaded that constant amount of times. For example if you put that macro to unit code then you get messages for each unit that has existed during that game.
Hmm. I got the idea of putting the macro in the unit's code from Age of Tentacles-- in which the "infect" weapon special doesn't work unless you put its macro in the unit-that-has-it's code. The elves' messages wouldn't play at all until I tried this, and I am not sure where else the macro should go. It made a lot more sense in the Merry Christmas campaign, where the macro would be placed in the scenarios just like a character death or custom terrain one would; so I don't know where it'd be in a multiplayer era.
GL_Network wrote:Let me guess. There are exactly five Christmas Elves units with these events in their code, right?
Why, yes there are... Sounds like this may have something to do with what Ravana mentioned above. Although, with this recent playing test, even though I hadn't touched the elves' WML, I thought I counted a Christmas Giver speak four AMLA lines instead of five, so that's weird... :augh:
Creator of Lonely Era.
Here's my art!
I'm also on Tumblr.
User avatar
Ravana
Forum Moderator
Posts: 2496
Joined: January 29th, 2012, 12:49 am
Location: Estonia
Contact:

Re: Lonely Era (first release available for 1.12)

Post by Ravana »

About event ids: http://wiki.wesnoth.org/EventWML#A_Trap_for_the_Unwary
Personally I would use event-based abilities with +tag instead of another macro though. Example https://github.com/ProditorMagnus/Agele ... wallow.cfg

For alternatives to [message] there are things like [print], [chat], [floating_text].

The suggestion by GL_Network means that you should use ability= filter not type=.
User avatar
Shield
Posts: 59
Joined: January 23rd, 2011, 5:58 pm

Re: Lonely Era (first release available for 1.12)

Post by Shield »

Good news-- replacing "type=" with "ability=" worked! Now allied units adjacent to Eirsons will either get berserk, or get berserk and be slowed. There's a problem with this, though. Units affected by "herbalist" never lose their new ability-- it should just last one turn, or however long the Eirson is next to them, if I'm right; they get the berserk special and keep it. Even when left alone, far away from him, they still retain the berserk special. That's not right.
Ravana wrote:About event ids: http://wiki.wesnoth.org/EventWML#A_Trap_for_the_Unwary
Personally I would use event-based abilities with +tag instead of another macro though. Example https://github.com/ProditorMagnus/Agele ... wallow.cfg
Alright... I think I see how the first thing and the second thing are supposed to work, but it's applying them that's my problem. I really only know the really simple stuff about variables, like what you decide to call them and how important that is in its usage; with stuff like dollar-signs, vertical bars, periods, VARIABLE_OP, etc, I can only make incredibly vague assumptions. I can understand the simpler sequences, and those that are named and arranged in certain ways, but it's really just educated guessing most of the time. I don't know how to modify one to make it do something I've never really seen before, or write one myself. So, I can look at the code and tell what the Christmas Elves' events are supposed to do, but I just don't know how they work.
To put it simply, I know what I'm looking at here; but I can't tell what's wrong with it, nor do I know how to alter it to do what it's intended to differently, since the examples I have for reference don't do almost the exact same thing as the code I'm tinkering with.

(sorry for being so slow with this... I just can't figure out what I don't understand...)
Creator of Lonely Era.
Here's my art!
I'm also on Tumblr.
User avatar
Ravana
Forum Moderator
Posts: 2496
Joined: January 29th, 2012, 12:49 am
Location: Estonia
Contact:

Re: Lonely Era (first release available for 1.12)

Post by Ravana »

Basically for each event that you want to fire only once at any given moment in game, you give that event id. From what I have seen, most first_time_only=no events should have id.

I understand that wesnoth uses discrete time - everything that needs to happen at one time happens, and then game jumps to next time moment. So when all events would happen at once, they all check for

Code: Select all

      [not]
         [variable]
            name=gift_message_said
            equals=yes
         [/variable]
      [/not]
before it is changed.

Problem with removing is {VARIABLE herbalisted[$i].herbalisted 1}. Needs to be like {VARIABLE herbalisted[$i].variables.herbalisted 1} and [filter_wml] changed accordingly
Reference: http://forums.wesnoth.org/viewtopic.php ... es#p581305
GL_Network
Posts: 31
Joined: February 17th, 2014, 8:08 pm

Re: Lonely Era (first release available for 1.12)

Post by GL_Network »

For the herbalist ability, I can think of two workarounds.

First, you could add an event that manually removes the herbalist berserk when the unit is no longer adjacent to the Eirson. This is a messy solution.

Second, you could add additional filter tags. The herbalist berserk is only active as long as the unit is next to the Eirson, then goes inactive. You then put " " (empty) as the inactive name of the ability. Having an empty name makes an ability or weapon special invisible in game. You then add another filter to the event to make sure that no unit receives the herbalist berserk twice.
Shield wrote:
GL_Network wrote:Let me guess. There are exactly five Christmas Elves units with these events in their code, right?
Why, yes there are... Sounds like this may have something to do with what Ravana mentioned above. Although, with this recent playing test, even though I hadn't touched the elves' WML, I thought I counted a Christmas Giver speak four AMLA lines instead of five, so that's weird... :augh:
An event placed inside an [unit_type] will only load when the unit actually appears in game. This has the following repercussions:

* The event will not load until an unit with the event appears in the game (at game start if the unit is a leader, or at recruit/recall/unit advance/creation in debug mode otherwise).
* If a second unit with the same event appears in the game, the event will load a second time. Double dialogue.
* If a third unit with the same event appears, the event will load a third time.
* Etc.

So if you got four lines instead of five, it probably means that the event has loaded four times. Only four out of the five units were present in the scenario at the time (dead units still count. The events don't get "unloaded" when the unit disappears).

Adding an id to the event should solve it. The game will recognize each instance of the event as actually being the same event, and will load it only once, if at all. So, only one line of dialogue.
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Re: Lonely Era (first release available for 1.12)

Post by Atreides »

GL_Network wrote:Let me guess. There are exactly five Christmas Elves units with these events in their code, right?
Shield wrote:Why, yes there are... Sounds like this may have something to do with what Ravana mentioned above. Although, with this recent playing test, even though I hadn't touched the elves' WML, I thought I counted a Christmas Giver speak four AMLA lines instead of five, so that's weird... :augh:
So if you got four lines instead of five, it probably means that the event has loaded four times. Only four out of the five units were present in the scenario at the time (dead units still count. The events don't get "unloaded" when the unit disappears).

Adding an id to the event should solve it. The game will recognize each instance of the event as actually being the same event, and will load it only once, if at all. So, only one line of dialogue.
I've been playing Santa's Helpers since Christmas and I figured out the problem with the repetitions. It was actually related to the number of custom AMLA macros included in each Elf type. They had 3-5 and the repetitions correlate exactly. 1 per amla macro.

The fix was simple, I just did what GL_Network said to do. Insert a unique id= line to each macro in the macros file. Easy peasy quick and greasy... :)

That fixes 1.12 but I copied the addon files to 1.14 to see if they work and yep they work just fine so far. Except the amla messages have gone away again, hehehe. The upgrades do happen though just silently (which is sorta OK).

The bigger problem with the units gaining abilities via AMLA is that it is very difficult to know which units have them (and thus need to be protected more) since they're all level 1 forever. The unit stats can be used to (slowly) work out which have gotten amla'd but it is not great.

P.S. I found one thing that 1.14 broke (Twinner for Givers) and fixed it. I guess it is now ported to 1.14 (for me at least hehe). The missing messages are still that, but it doesn't matter much. They're kinda clunky in 1.12, in fact allies with Chr. Elves cause you to see and have to hit enter when their units amla... ack! As one poster wrote a different communication tool would probably be better. Above my pay grade to implement (at this time) so I leave it. :)
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Lonely Era released for 1.14

Post by Atreides »

Version 1.0 uploaded! Ported to 1.14, bugs fixed and new faction added. Factions balanced!
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Lonely Era updated to 1.2

Post by Atreides »

Version 1.2 uploaded. New units, new graphics, new descriptions added.
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Lonely Era (Ice Age) updated to 1.3

Post by Atreides »

1.3 is up now. Changelog excerpt:

Version 1.3:
* Herb berserk no longer affects leaders
* Christmas Elves snow/ice terrain corrected to include all snow/ice and no longer include all keeps/castles (old bug in faction)
* Lowered herbalist heal to 3 since they're not mainly healers and too drunk to do a good job anyways
* Dropped reindeer to lev1 made it a scout gave it custom amlas, gave woodland resistances, made race for it
* Made seals more hp, less damage
* Added healthy trait to trees, added major heal ability if they can find pine tree hex to sit on
* Raised santa amlas to 15% extra hps
* Fixed amlad units not being fully healed due to game bug (?)
* Added hero graphics to amlad units, makes it easier to spot your leveled up units, excluding leader
* Caught typo in hertug that gave it no movetype by pure chance
* Enhanced abilties so they all grey out when inactive
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Lonely Era updated to 1.4

Post by Atreides »

Version 1.4.0
- The Deep Ones have joined the Lonely Era (which is getting rather crowded hehe)
- ported deep ones to 1.14
- a few missing anims/sounds added
- balanced cost wise and a few stats changed to make them stronger on land
- repaired broken advancement to caster
- spelling errors fixed
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
User avatar
Atreides
Posts: 315
Joined: March 30th, 2019, 10:38 pm
Location: The North Pole

Lonely Era updated to 1.5 - 6th faction added!

Post by Atreides »

Version 1.5

The mysterious and alien Jephrif have joined the Lonely Era! Crystalline life forms from the upper reaches of the atmosphere have started to descend to Wesnoth. What are their aims? It is very cold that far up in the sky. As befits the theme of the Lonely Era the Jephrif seem to be encased in a sheath of Ice.

What with 6 factions now being part of the era it is likely that no more will be added. It's a good number. :)

An overview of the factions:

1) Santa's Helpers are his Elves as well as animated pine trees. They are an updated faction based on the Merry Christmas Campaign. Beware of Elves bearing gifts though, the presents are very distracting. They are unique in not having standard levels, they each can gain up to 4 special abilities via AMLA but always remain at level 1. Of course there are also Flying Reindeer and Christmas Seals.

2) Gremlins are an all teleporting race of elusive ethereal creatures. Individually fragile they work together using their tremendous mobility to swarm and overwhelm their enemies. Their mages are perhaps the ultimate glass cannons but if you can somehow keep one alive long enough it might even get to level 5 and become immortal.

3) Vaeringjar are a Viking faction allied with Wolfkin. The vikings eschew ranged weapons as well as sissy ideas like dodging blows but are a very, very hardy lot. They also have a unique herbalist unit that can inspire berserker rage in adjacent vikings for a turn. The wolfkin are lithe and armed with bows and teeth on the other hand. They are also very agile in contrast to the vikings. As nocturnal hunters they are devastating at night and almost helpless in the day.

4) Avians are cold loving, water hating bipedal birds. Their hollow bones and feathers make them vulnerable to fire and blunt weapons. They are unique in having cheap level 0 healers. Unusually their leaders are not drawn from the ranks but form a separate class only selectable as leaders. Tamed Albatrosses to patrol the awful waters.

5) The Deep Ones - Slimy, slippery, blasphemous fish-frogs of the nameless design - living and horrible - have now been sighted on the edge of Wesnoth. Mutants who slowly evolve from human to monster these creatures are nothing to be trifled with! An all water faction they are still capable of holding their own against the landlubbers.

6) Jephrifs live far up in the sky, miles above land. Away from even the most basic things most other races take for granted, such as solid ground, their society developed to be quite alien indeed. In recent times, jephrifs began descending from the skies to participate in combat against other races - apparently for their own amusement, seeing life as a game.

The era is now complete. It's been thoroughly balanced, debugged, spellchecked. I've playtested it dozens of times and found it to be one of the most fun eras I've tried.
--
Any typos are the fault of my laptop keyboard!
Lonely Era Merry Christmas Campaign Red MP Maps
Post Reply