Posts RSS Comments RSS Digg Technorati Blinklist Furl reddit 84 Posts and Comments till now
This wordpress theme is downloaded from wordpress themes website.

Archive for April, 2020 (2020/04)

HeroScribe Pem’s Fork update

When I was chatting (in our Discord channel) to Spiffy about working on the Lua code, I noticed that in Quest 3, to find Ulag’s position (left top), is kind of kludge.  HeroScribe GUi doesn’t show it, so you have to count the squares in the GUI and/or search the XML to figure it out.  So I added it in the GUI.  It’s a small update, but it’s a great example where updating HeroScribe GUI is useful for writing the Lua code.  This will be used in HQBase-03-LairoftheOrcWarlord_US.xml’s function monster_dies(left, top) to determine whether the spawned monster is Ulag, and also for monster_dies(left, top).


Contributions from Spiffy coming; Lua related

Spiffy has joined (he emailed me from this blog).  I created a Discord channel that we’ve been using, and also wrote some new user wiki doc in the project’s bitbucket on how to setup the project (build/run), and how to use the git/bicketbucket flow (ie he will work in a separate git branch, then create a bitbucket pull request).

It’s been a while since I did any updates on HeroQuest UE4 (distractions from day job and personal life), but Spiffy has inspired me to do some more work this past week (amidst COVID-19 WFH), and also to help him to ramp up on implementing Lua code for quest-specific game rules/logic.  My recent changes include.  Fix crash when UMD is not plugged in.  Improve Lua support for _on_exit().  And Spiffy will implement more Quest-specific game logic using Lua.

Spiffy’s background is mostly in art for game development, and he is helping with HeroQuest UE4 to get more code exposure.

For example, HQBase-01-TheTrial_US.xml (HeroScribe XML) now has a corresponding HQBase-01-TheTrial_US.lua.  One of the functions in HQBase-01-TheTrial_US.lua is:

function on_exit()
    if (not g_bCanExit) then
        quest_print("can’t leave until you defeat Verag (a foul Gargoyle)")
    return g_bCanExit


There’s also some related code that gets triggered whenever a monster dies:

function monster_dies(left, top)
    if (left == 13 and top == 9) then
        quest_print("Verag, a foul gargoyle, was slain.")
        g_bCanExit = true

And here is the first Lua function which Spiffy has added:

function intro()
    quest_print_intro("Quest 1", "The Trial", "You have learned well, my friends.  Now has come the time of your first trial. You must first enter the catacombs which contain Fellmarg’s Tomb. You must seek out and destroy Verag, a foul Gargoyle who hides in the catacombs. This quest is not easy and you must work together in order to survive. This is your first step on the road to becoming true Heroes. Tread carefully my friends.")

If you are interested in contributing to HeroQuest UE4, please contact me –