[Open / Signup] One Room Round Robin 3 - Calling All Modders

Ask for help about creating mods and scripts for Grimrock 2 or share your tips, scripts, tools and assets with other modders here. Warning: forum contains spoilers!
User avatar
Diarmuid
Posts: 807
Joined: Thu Nov 22, 2012 6:59 am
Location: Montreal, Canada
Contact:

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by Diarmuid »

minmay wrote: Diarmuid's room
Loot:
Actually seems somewhat on the low side, but that's okay.

Other:
Puzzle spoilers:
SpoilerShow
It's unintuitive that the reflection is supposed to be the inverse of the pattern. Also, visually, the "circles" are squares, and they would only geometrically be circles in Chebyshev geometry (Grimrock is taxicab). This leads to a possible misinterpretation of the first pattern: I thought it might be

Code: Select all

01110
1...1
1...1
1...1
01110
There's another possible misinterpretation of the "dark corners" hint as

Code: Select all

10001
00000
00.00
00000
10001
and if not for the fact that the second pattern is already an 'X', the third pattern could easily be an 'X' since that is also a cross, but the second pattern rules that out well enough I guess?
The reason these things are issues is that it takes so damn long to actually input the patterns.
Hmmm, for the inverse mirror effect, I know it is not 100% intuitive, but I meant it to be cryptic and as the first pattern is relatively easy, it should show the mechanic to the player early on.

I'm more concerned about the patterns mis-interpretations. For the first one, I could write "When shines entirely the first circle above..." instead of "When shines the first circle above..."? Any suggestion for the second one? Maybe "When sparkle the eight dark corners below in the midst of shadows...", instead of "When sparkle the dark corners below in the midst of shadows..."?

Also, did you solve the super-secret 4th pattern? Not that I realistically expect anyone to, but still.
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

Diarmuid wrote:I'm more concerned about the patterns mis-interpretations. For the first one, I could write "When shines entirely the first circle above..." instead of "When shines the first circle above..."? Any suggestion for the second one? Maybe "When sparkle the eight dark corners below in the midst of shadows...", instead of "When sparkle the dark corners below in the midst of shadows..."?
I'd suggest dropping the word "circle" entirely. "When shines the first square above" or even "When shines the first ring above" would work, I think. It just...isn't a circle.
"Eight dark corners" sounds good to me.
Diarmuid wrote:Also, did you solve the super-secret 4th pattern? Not that I realistically expect anyone to, but still.
nope, it's pretty clear there's a fourth pattern but I didn't find what it was
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

I will need to merge this:
SpoilerShow

Code: Select all

defineObject{
  name = "party",
  baseObject = "party",
  components = {
    { class = "Party",
      onCastSpell = function(self, champion, spellName)
        return spells_functions.script.onCastSpell(champion, spellName)
      end,
      onWakeUp = function(self)
        return not spells_functions.script.deepSleep
      end,
      onDamage = function(self, champion, damage, damageType)
        return spells_functions.script.onDamage(champion, damage, damageType)
      end,
    },
    { class = "Timer",
      timerInterval = 0,
      triggerOnStart = true,
      onActivate = function(self)
        spells_functions.script.moveLights()
      end,
    },
    { class = "Light",
      name = "torch",
      range = 12,
    },
  },
}
with the code from mod_assets/party.lua to make the spells pack work:
SpoilerShow

Code: Select all

defineObject{
   name = "party",
   baseObject = "party",
   components = {
        fw_addHooks{
            class = "Party",
			onDrawGui = function(party,g)
            --Dummy hook for enabling onDrawGui-connectors
			end,
		},
    },
}
Is this ok ?
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

AndakRainor wrote:I will need to merge this:
SpoilerShow

Code: Select all

defineObject{
  name = "party",
  baseObject = "party",
  components = {
    { class = "Party",
      onCastSpell = function(self, champion, spellName)
        return spells_functions.script.onCastSpell(champion, spellName)
      end,
      onWakeUp = function(self)
        return not spells_functions.script.deepSleep
      end,
      onDamage = function(self, champion, damage, damageType)
        return spells_functions.script.onDamage(champion, damage, damageType)
      end,
    },
    { class = "Timer",
      timerInterval = 0,
      triggerOnStart = true,
      onActivate = function(self)
        spells_functions.script.moveLights()
      end,
    },
    { class = "Light",
      name = "torch",
      range = 12,
    },
  },
}
with the code from mod_assets/party.lua to make the spells pack work:
SpoilerShow

Code: Select all

defineObject{
   name = "party",
   baseObject = "party",
   components = {
        fw_addHooks{
            class = "Party",
			onDrawGui = function(party,g)
            --Dummy hook for enabling onDrawGui-connectors
			end,
		},
    },
}
Is this ok ?
I'm not Jgwman but please don't do this. It's bad enough that someone removed the ability to use fw hooks for PartyComponent.onDrawGui. What's wrong with using fw hooks for your spell pack?

(Adding the TimerComponent and replacing torch should be fine, but I would suggest giving the TimerComponent a non-default name).
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
User avatar
Diarmuid
Posts: 807
Joined: Thu Nov 22, 2012 6:59 am
Location: Montreal, Canada
Contact:

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by Diarmuid »

minmay wrote:
Diarmuid wrote:I'm more concerned about the patterns mis-interpretations. For the first one, I could write "When shines entirely the first circle above..." instead of "When shines the first circle above..."? Any suggestion for the second one? Maybe "When sparkle the eight dark corners below in the midst of shadows...", instead of "When sparkle the dark corners below in the midst of shadows..."?
I'd suggest dropping the word "circle" entirely. "When shines the first square above" or even "When shines the first ring above" would work, I think. It just...isn't a circle.
"Eight dark corners" sounds good to me.
Diarmuid wrote:Also, did you solve the super-secret 4th pattern? Not that I realistically expect anyone to, but still.
nope, it's pretty clear there's a fourth pattern but I didn't find what it was
I think that "ring" sounds quite fine, thank you for the suggestion.

As for the 4th pattern,

Partial spoiler:
SpoilerShow
It requires someone having played LoG1 and then figured out the crazy-hard secret in the desert in LoG2 (or at least having read about it on the net), and then figuring out that the "Let the relic that was buried in the desert shine again below." scroll found below relates to that, but with "relic" and "desert" there are two direct references.
Full spoiler:
SpoilerShow
So you have to make a gear pattern lit below:

Above:
01010
10001
00100
10001
01010

Below:
10101
01110
11011
01110
10101

Btw, I was hesitant with:
01010
11111
01010
11111
01010

but it looked too much like a hashtag and was less interesting/challenging to build from the puzzle point of view
User avatar
Diarmuid
Posts: 807
Joined: Thu Nov 22, 2012 6:59 am
Location: Montreal, Canada
Contact:

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by Diarmuid »

Oh, BTW, i have code such as:

Code: Select all

	GTKGui.Basic.showInfoMessage("The relic shines again! (+4000 xp)", 5)
	or3_manager.script.unlockAchievement("diarmuidRelic");
That was meant to call things implemented later such as GUI dialogue, and achievements, that John was supposed to add in later on in a central manager. Did someone take care of that?
User avatar
AndakRainor
Posts: 674
Joined: Thu Nov 20, 2014 5:18 pm

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by AndakRainor »

Those 3 functions may return false to cancel the event, is it something I can do with those hooks (never used it)?
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

Diarmuid wrote:As for the 4th pattern,

Partial spoiler:
SpoilerShow
It requires someone having played LoG1 and then figured out the crazy-hard secret in the desert in LoG2 (or at least having read about it on the net), and then figuring out that the "Let the relic that was buried in the desert shine again below." scroll found below relates to that, but with "relic" and "desert" there are two direct references.
Oh, I figured out that much. I just couldn't think of any pattern that resembled it.
Diarmuid wrote:That was meant to call things implemented later such as GUI dialogue, and achievements, that John was supposed to add in later on in a central manager. Did someone take care of that?
"Sort of". The message box is inappropriately sized and the achievements are just indicated with hudPrints, but they technically exist.
AndakRainor wrote:Those 3 functions may return false to cancel the event, is it something I can do with those hooks (never used it)?
Yes. Returning false from fw hooks even prevents any successive fw hooks for the same object from being called so you don't generally have to worry about other people's hooks interfering. I guess deep sleep could be kind of weird in my room but not to the point of breaking anything, and I can't think of any other conflicts.
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
minmay
Posts: 2780
Joined: Mon Sep 23, 2013 2:24 am

Re: [Open / Signup] One Room Round Robin 3 - Calling All Mod

Post by minmay »

AndakRainor wrote:import "mod_assets/party.lua" comes last in init.lua. Is it not a problem ?
If fw_hooks sees something already set for the hook field in the component, it won't add its own hook and you won't be able to use fw hooks there. So whoever added that onDrawGui hook in party.lua made it impossible for anyone to use fw hooks for PartyComponent.onDrawGui, but they can still use them for the rest of the PartyComponent hooks. If you add your hooks to the PartyComponent definition instead of using fw.script:set(), then you'll remove every other modder's ability to use those hooks, and break all the existing ones. Use. The. Framework. Hooks.
Grimrock 1 dungeon
Grimrock 2 resources
I no longer answer scripting questions in private messages. Please ask in a forum topic or this Discord server.
Post Reply