GithubHelp home page GithubHelp logo

cooljeanius / the_earths_gut Goto Github PK

View Code? Open in Web Editor NEW
5.0 3.0 6.0 17.33 MB

A Wesnoth add-on campaign; originally by Anonymissimus

Home Page: https://forums.wesnoth.org/viewtopic.php?f=8&t=26800

License: GNU General Public License v2.0

Lua 98.14% Shell 1.86%
wesnoth the-earths-gut wesnoth-campaign wesnoth-umc

the_earths_gut's Introduction

The_Earths_Gut

A Wesnoth add-on campaign, copied from the BfW 1.12 add-on server to forward-port to 1.14, and then to 1.16.

It is 515YW and you are Hamel, a young dwarven leader. Your tribe resides in the Knalga caverns near the Dwarven Doors and is constantly under threat of attack. Resources are also becoming scarce in your area, so you must guide your people on a quest for more minerals. With the new minerals you will be able to forge new weapons and armor to push back your enemies. The campaign focuses on "dwarvish dungeon crawling", and the developer intention is to make it playable for newbies on easy while also keeping it challenging for experienced players on hard. (Beginner level, 23 scenarios (nearly finished, but not quite)) Requires BfW 1.16 or greater. Requires 'The Hammer of Thursagan' to be installed (which is part of mainline now, so it should already be there unless you've deleted it or something). Former working title: "Dwarven Kingdom" (which is now the title of a separate campaign by Ashmyr/Myrian).

Link to forum thread: https://forums.wesnoth.org/viewtopic.php?f=8&t=26800

the_earths_gut's People

Contributors

ashmyr avatar celerini avatar cooljeanius avatar imgbotapp avatar k-konami avatar knyghtmare avatar multiseptim avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

the_earths_gut's Issues

Executions in S19 (Prison) are buggy

  • it doesn't really make sense for the executioner to walk right thru you if you're in his way (yes, I know the note in the objectives says only killing the executioner stops the executions, but I feel like it SHOULDN'T be that way; blocking him off should also stop the executions)
  • if you place one of your own units on the altar where the execution takes place, your unit dies, too, in addition to the one getting executed. Maybe that's intentional, but you'd think that if it were intentional, there'd at least be some warning about it, and also a message from the extra unit that dies alongside the other one.

1.16: general problems caused by transport ships unloading their passengers

This wose has been unloaded from this transport ship:
Screen Shot 2022-06-08 at 18 43 02
However, the image is still showing as being overlaid atop the ship that just unloaded it. This only started happening when porting to BfW 1.16; it worked fine on 1.14.
Edit: the original issue reported here with the unit image overlay is fixed; I'm keeping this issue open for other related issues I noted in follow-up comments...

Balance The Enemy Sides in 5b (and other suggestions)

The Undead are always crushed. The Trolls always get to the Lich before I do. It feels really unbalanced, and in my opinion, it should be more like the Subterranean Struggle scenario of UtBS, without the side-allying. Here's a few suggestions of my own (let's hope I get this formatting right..)

  • The two chokeholds near the rail might be too easy of exploration points. I'd suggest adding a few loyal guard units for the enemy sides just outside of those hexes, far enough away that players can't see. The guard units could be L2 or several L1s, to encourage players to move along the rail westward.
  • In the storage depot area, add a few extra Wraiths, Ghosts, Dark Adepts or Sorcerers. Perhaps add some units behind the trolls to encircle them.
  • Perhaps add a few ways for the sides to attack each other? This may not be the best suggestion as players could use it and they could easily stand back, but as soon as you get to the storage depot it feels like the sides just ignore each other and attack you.
  • I'm not sure if this is me being lucky/unlucky but I always get the long route through the undead area. Is this intentional? It feels like it should be 50/50, but the way through the troll area is clearly shorter.

Allow use of more of the UMC music books

Currently, only one three of the UMC music books is usable with this campaign. There are 12 as of the filing of this bug. It would be cool if this campaign could use all of them. Fixing this will require listening to all of the music, and categorizing it to fit under the existing music moods in utils/music.cfg.

Issues With The Final Scenarios

  • 21, Wesnoth Soldiers
    The geography of the scenario feels a little repetitive. I wish there was more flavor to it. Eowarand should at least have his recalls from the last encounter, since all of them dying between those 2 scenarios seems weird, lol. The rest of the scenario is fine. I completed it quick, and it was underwhelming. I wish it was harder, but it's well-written at least. Perhaps change the objectives when the leaders flee to "defeat all remaining units"?
  • 22, Caverns of Flame
    I leveled Clarissa into a silver mage and sent her on this mission. She got recalled and every non-flagged village was visible, which was really weird and a bug. Spoiled a lot of surprise, but I think that's a game problem, not one caused by you.
  • I really liked the encounters and fighting. Getting 4 new units was neat. The layout wasn't what I was expecting but it was nice, however, 1 encounter got ruined. Somehow, for some reason, the Dragon bolted eastwards and got killed by a few Skeletal Dragons, lol. Perhaps set up more of a barrier between the 2 sides (which when the Explorer comes along he could destroy said barrier), to prevent this?

Translation into other languages

I've been maintaining a potfile for a bit, eventually I'll want to see if I can get some other people to submit translations for it... kinda depends on #7 a bit...

Copyediting

Some general minor copyediting issues I noticed throughout:

  • Miscapitalization
  • Spaces missing before or after ellipsises
  • Wording

S20 - A Cry for help, text suggestions

find out the fate of -> find out about the fate of / investigate about the fate of
It is fine. -> That is acceptable.
into the battle -> to battle

Objectives
and then move them -> and they'll be moved to
^ actually, maybe change the way it is handled to match the text. As it is, there is no way to undo a choice without reloading the turn.
If possible, add a counter so the player knows how many units are already in the group. Maybe don't make the units disappear, but move them outside of the castle, and just change their side for now.

Also, map wise, I think it would be better if some damage was still visible, like way more damage. Story wise, they arrived here, went immediatly to the prison, and have been back for what, 2 days? And since then they fixed everything up?

Change Clarissa's unit type

Right now Clarissa starts off as a normal mage, meaning that she has both the Red Mage and White Mage advancement trees available to her. This poses problems for dialogue that assumes that she's taken either one branch or the other. Perhaps there could be a new unit type for her that's a compromise between both branches? Call it the "Pink Mage" or "Orange Mage" or something... I'd need to get someone to do some new sprites for it, but I could probably handle the stats...

(re)write epilogue scenario to tie up loose ends of the plot

I'm splitting this off from checkbox 11 of 13 in #8; what it should contain is currently described in timeline.txt and this comment in S22:

# TODO: dialogue about needing the book, too... Dulatus brought it up during S13t, but the only
# other dwarf who was with him there at the time was Hamel, who isn't here now, so I dunno who
# should ask him about it here...
# Some of the things mentioned by timeline.txt will have to be moved into an epilogue scenario,
# specifically:
# - Dulatus meeting back up with Hamel
# - Hamel and Dulatus checking back in with Relgorn
# - Hammer being sent to Karrag in Kal Kartha
# - Karrag getting corrupted
# - Relgorn retiring
# - Hamel becoming Lord of Knalga
# - Hamel continuing to search for the book

Edit: adding a checklist:

  • animations (mostly movement)
  • rewrite dialogue
  • ensure actual correct units are getting recalled instead of creating them anew (i.e. handle leader switch properly)
  • fix travelmap (add a second one? To show the return to the location of the starting scenario)

Use `{GIVE_UNIT_EXPERIENCE}` more

I kind of forgot that I'd added the {GIVE_UNIT_EXPERIENCE} macro between scenarios 8 and 13 on my current playthrough; on a future playthrough I should find more places to put it...

S10: Are the Undead and Troll sides supposed to be asynchronous?

I started the scenario from the start-of-scenario save-file a few times to see if the generator was working.
I noticed that sometimes I got Trolls side=6 as my enemies and Undead side=5 other times. If the scenario is supposed to be designed like that then it's okay, and I shall close the issue. Otherwise, it might be worth looking into.

The goblins and orcs were present in every instance so, I guess they are okay.

One peculiar case: One time the Death Knight leader spawned near the Orc base but it had no Keep to recruit from. This has occurred just once so I speculate this is a very rare chance.

Issues with Dungeon Crawl Scenarios (S18 and S19)

  • The Investigation feels too short. Perhaps more encounters? That may not help, though.
  • With Prison, this is where I have the most objections.
  • So many chokeholds.
    Suggestions: Perhaps add a way for a player to "find" a tunnel, that a crazed prisoner found? Perhaps widen the hallways?
  • The turn limit is insane. I'm not really sure how Anon expected anyone, let alone beginners, to finish in that amount of time. I could barely do it as an advanced player.
    Suggestion: Raise the turn limit and maybe delete or decrease the level of some of the enemies. Have a "Where did I put my axe?" line of dialogue and turn delays so you can have a few turns to hack your way at the line of Sentinels, you have to get through that full line and to the Lich in 12 turns, which is super difficult.
  • Fix the execution glitch (bug #4).
    This is already in another issue but it was kinda annoying.
  • It doesn't feel like you get many units, but you battle dozens of leveled-up units. I would like if you were able to free more units. You only get 1 extra one in the whole scenario, despite it being a really hard dungeon crawl. I guess you can turn around and explore everything once the Executioner is dead but first time players won't know that.
    Suggestions: One prison cell (maybe behind one with 3 level 3 enemies) contains a group of 4-5 of your units, some level 1, some level 2, some level 3. Perhaps after ~20 turns, a group of 7 free units could appear at the entryway and see you, saying something like "we fled when Kal Torat was attacked, we're here to fight by yer side once more!"

S8 - Lost, give the player villages they might have not taken once you can recruit

Before you free Krolock, there is no incentive for you to take villages beyond heling units. So, you might not have taken all 4 villages you had in your reach up to this point. Later, when you can recruit, the villages are far, far away, so you can't just take them now.
-> Give those villages to the player once they can recruit.
grafik

Lua error in S06

Log message:

20220603 02:14:48 error scripting/lua: ~add-ons/The_Earths_Gut/lua/ai_controller.lua:290: variable '_' must be assigned before being used
stack traceback:
	[C]: in function '.error'
	lua/ilua.lua:138: in metamethod 'index'
	~add-ons/The_Earths_Gut/lua/ai_controller.lua:290: in local 'cmd'
	lua/wml-utils.lua:144: in field 'handle_event_commands'
	lua/wml-flow.lua:5: in function <lua/wml-flow.lua:4>

Screenshot:
Screen Shot 2022-06-03 at 02 15 12
I wonder if this is due to 21a51bd...

luacheck

After trying to work on #26 a bit I've decided to start running luacheck on this repo occasionally; I was thinking of pasting my output here, but there's kind of a lot of it...

Lessen The Difficulty on S12, Under Pressure

The scenario is really difficult, even on Easy. It feels like a huge difficulty ramp, like if The South Guard suddenly became Northern Rebirth halfway through. I do know the scenario is supposed to be a drain, but it feels like too much right now. Here's a few suggestions:

Dark Forecast Style

  • Turns 1-5, the spawnpoints spawn Walking Corpses, Skeletons, Ghouls, Ghosts and Dark Adepts. Gives the player a little time to form defensive formations. Perhaps in the meantime you could have an enemy leader who recruits, maybe 2 or 3 to heighten up the pressure.
  • Turns 5-10, the spawnpoints spawn Soullesses, Skeletons, Ghouls, Ghosts, Dark Adepts, Revenants, Deathblades, Bone Shooters. Gomating arrives on Turn 8, and on Turn 9, Hamel or Aiglathing says something like "These undead waves are getting worse." and then either "If only we had Clarissa", or "Perhaps the mage could do something about it if she got close enough." Perhaps you could have an enemy leader a considerable distance away who recruits a lot of Level 2s and they start arriving now.
  • Turns 10-20, the spawnpoints ramp up. They spawn Deathblades, Revenants, Bone Shooters, Necrophages, Shadows, Wraiths, Dark Sorcerers, Chocobones, and Soullesses. Gomating arrives back on turn 18 or so.
  • Turns 20+, the difficulty seriously ramps up. An Ancient Lich appears and recruits level 3s with a lot of gold. This is to tell the player to get out FAST with Hamel, and where the real bloodbath begins.

Other Suggestions

  • Perhaps make the castle easier to defend. If you saved loyal units maybe they could help you (ie, Clarissa might build some anti-undead hexes around the castle that undead can't step in, but the squares inside the hexes aren't enough to contain many units). More castles, a small moat, not anything over the top, and something a little restrained, but something to help with the bloodbath the player WILL get into.

  • Perhaps make a way to deactivate the stones for a turn or 2. Maybe if a Lord or Dragonguard got to a stone he could temporarily fight it, deactivating it for 1 turn but he loses 10 health? Could be a way to provide a challenge for the player if they only have 1 mage, or if they have none at all.

S15: Explain composition of Kalenz's side better

Konrad's recruit list feels too small. Perhaps an in-plot explanation of "the rest of the army split off from him due to a close encounter"? But that wouldn't make much sense..

You could give Kalenz's side more gold, but you also don't want to turn the scenario into an NR big battle.

S02, "Towards the West Gate": Add bats

in 3405bb3 I added a side for bats. I'm thinking I want to have them appear randomly and mildly annoy both the player and the orcs, but otherwise generally stay out of the way. The scenario is already pretty tight (in terms of balance) between the player and the orcs, so this would just be for a little spice that makes things neither easier nor harder. Main reason I'm considering doing this is because when playtesting this campaign, having to do S02 can get pretty repetitive.

S07 ("The Bridge is Broken") improvements

  • It can still be kind of confusing to figure out what to do in this scenario; try giving more hints
  • Give a confirmation prompt when the player finds one of the passages, to confirm if they actually want to go that way, since choosing one prevents the player from choosing the other (difficult; would require switching the event to use first_time_only=no, which would then require restructuring the whole thing to ensure you can still only choose one route after you've made your selection)
  • Handle the limiting of Guardsmen recruits better (disallow their recruitment again in more places?)
  • Ensure that speaking units are controlled by the player when relevant
  • Commission an additional story image

The Caverns of Flame (S22) progress tracker

  • Fix travel map track (pick 1 of the 4 to use)
  • Customize AI of enemy sides
  • fine-tune enemy gold/income amounts (might actually be okay already)
  • give enemy leaders names (need to check lore for this)
  • do a better job controlling which monsters are allowed to do monster infighting (or just remove monster infighting entirely?)
  • modify notes in objectives
  • fix issue with there being 2 Dulatuses
  • write some more opening dialogue
  • write some more dialogue for encountering/killing various enemies
  • script cutscene for finding the Hammer of Thursagan, and introducing the secret final boss
  • investigate final boss event being triggerable multiple times
  • script separate (longer?) end cutscene, for after you kill the secret final boss (WIP; more text might need to be written)
  • prevent enemies from picking up potions of healing (whichever one it was that was doing that)
  • adjust color to look more fiery
  • commission an additional story image

Translatability

Currently, wmlxgettext chokes on utils/abilities.cfg when trying to generate a .pot file; that will have to be fixed if this campaign is ever going to be translatable.

S8 Lost, you don't know Krolock's name at first

Make Krolocks name into '???' and make the objectives and the defeat condition refer to 'the troll whelp' instead. Change it back to make it refer to Krolock after you free him from his cage and make him introduce himself.

Figure out what to do with previously-commented-out Lua

Normally, in languages with a preprocessor (C, WML, autoconf/m4), I like to change commented-out code into ifdef-ed out code instead, so that it's easier to re-enable if necessary. Lua doesn't have a preprocessor, though, AFAIK. So, instead I'll want to find something else to do with the commented-out Lua code: just remove it? Have it guarded by a language-level conditional? If so, what should the guarding conditional generally be? wesnoth.game_config.debug_mode?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.