Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Nublette Requires Assistance with Scripting and Puzzles
Kreekakon Offline
Pick a god and pray!

Posts: 3,063
Threads: 70
Joined: Mar 2012
Reputation: 124
#21
RE: The Nublette Needs Help With Everything

Hmmm if I was to think from scratch I couldn't for the life of me think of "fire" as the answer for that.

Still it would depend on the puzzle. Is it a multiple choice puzzle where you pick an item (One of them the answer) that best suits the riddle? Or is the riddle hinting that you have to set something on fire? Depending on this the puzzle can either be just fine, or too hard.

[Image: Tv0YgQb.gif]
Image by BandyGrass
01-12-2013, 07:16 PM
Find
TheGreatCthulhu Offline
Member

Posts: 213
Threads: 10
Joined: Oct 2010
Reputation: 32
#22
RE: The Nublette Needs Help With Everything

Successfully solving such riddles is related to the cultural and linguistic background of the player, so what some people might get, others might not, etc., which makes it hard to get it right.

For example, when I first read the last line, i didn't get it as "lifeless, yet it can be drowned", I got it as "lifeless, yet it can drown you", which immediately made me think of water (quite the opposite of what you intended), forgetting any thoughts about fire I had before. I think it's mostly because (1) in the previous lines all the verbs, the "actions" of the fire are... well, active, while "drowns", as you intended it, is passive (and I'm not talking about the form of the sentence, but about the meaning of the verb itself - "to drown someone" vs "to get drowned"); another reason is that (2) English is not my native language, so I might have some bias towards one meaning or another.

(Edit: transitive vs intransitive form of the verb - is that what I'm talking about? XD)

So, maybe add a few more lines, talk some more about how it gives light and life, and how it can take it as well, maybe allude to some other concepts related to fire, etc.
(This post was last modified: 01-12-2013, 08:21 PM by TheGreatCthulhu.)
01-12-2013, 08:00 PM
Find
CarnivorousJelly Offline
Posting Freak

Posts: 1,196
Threads: 41
Joined: Dec 2012
Reputation: 80
#23
RE: The Nublette Needs Help With Everything

Okay, what I'm gathering is that the riddle is:
- slightly self-contradictory
- difficult for other reasons as well

For better context, it will be one of 5 riddles in a room. All are "elemental" the answers are: mountains (earth), fire, time, wind, and river (water). Each riddle corresponds with a box in the wall (from mansion_base\walls\secret) which is lit based on theme (ie water is blue) and has some form of the answer in it (time has the desk clock, fire is lit on fire). At the back wall of these boxes are levers which need to be pulled in the correct order (the riddles explain the order).

Riddles:

1. Mouthless it consumes
Lungless, breathes
Provider and destroyer
Lifeless, the water drowns it

2. This thing all things devours;
Birds, beasts, trees, flowers;
Gnaws iron, bites steel;
Grinds hard stones to meal;
Slays kings, ruins town,
and beats high mountains down

3. Voiceless it cries
Wingless flutters
Toothless bites
Mouthless mutters

4. What always runs and never walks,
Often murmurs, never talks
Has a bed but never sleeps
Has a mouth and never eats

5. What has roots as nobody sees,
Is taller than trees
Up, up it goes
And yet, never grows


Answers:
Spoiler below!

1. Fire
2. Time
3. Wind
4. A river
5. Mountains


Three of those were "borrowed" from The Hobbit (2, 3, and 5) and 4 was from the Internet. I know they're hard x.x I might put in extra hints if the player takes too long to start solving them (mementos) or I'll try to make an easier set. All I can think of currently is that the player could ignore the riddles and use process of elimination or guessing to solve them.

Edit: I could see someone getting stuck on time and fire; the first lines are rather similar :/

Edit #2: I'm considering making the riddles an obvious but optional solution to the dilemma (an uncrossable bridge); the other option being to jump over the railing or create a bridge. In other words, solving the riddle puzzle will put a bridge over the gap, but you could cover the gap with a long plank, jump across by making a pile of chairs, or short-cut to the bottom by jumping into the gap. Although, admittedly, I don't really want the player to completely by-pass the riddles (but that's just because I'm super-proud of what I did with the hints)

Edit #3: I have no idea if edits bump the post or not, I'm trying not to bump it unless I have a really pressing question.

I'm making the riddles immediately before the pivotal point in the plot, meaning the game's coming to an end only a few maps after the riddles have been solved. I think I might be justified in making the riddle the most obvious solution with one alternative that would be harder to come by, but easier to execute. The player will most likely not explore the maps related to the riddles without reason, so I'll probably just throw in hints (otherwise, they miss parts of the story line and will become confused).

[Image: quote_by_rueppells_fox-d9ciupp.png]
(This post was last modified: 01-14-2013, 01:41 AM by CarnivorousJelly.)
01-12-2013, 08:40 PM
Find
CarnivorousJelly Offline
Posting Freak

Posts: 1,196
Threads: 41
Joined: Dec 2012
Reputation: 80
#24
RE: The Nublette Needs Help With Everything

Also, I have a question. It's not riddle-based, so maybe I'll be able to acquire some help Smile

To be clear, All I wanted to know about the riddles was whether they were too hard to figure out

Is it possible to have an action on one map, let's say pulling a lever is the action, effect another map, opening a secret door? In other words, would I need to use the global.hps file to do this and would that require FC, or is it possible to have global variables without creating a conversion?

The idea I have in mind is much more complicated than just a lever opening a secret door, but it was a good basic example of what I'm trying to achieve.

Aaaaaaaaaand one more question:
Spoiler below!

My maps are showing up in the level editor's file browser, I can load them in-game, I can load and save the files as many times as I want, but they aren't showing up in the Window's file browser.

I'm not sure I was really clear with what I said there... Okay, let's pretend I make a map. I save this map to C:\Program Files (x86)\Amnesia The Dark Descent\redist\maps\created_story as test_map.map

When I'm in the level editor, I can see test_map in its folder and open whenever I want. In Amnesia, I can load it from debug mode (and non-debug mode), go through a level door into test_map, leave test_map and go back to the first room, and the script, test_map.hps, works on the map.
However, when I open the file through my computer's file browser (Windows Explorer), test_map.map does not show up. I saved the file directly to that folder on first save, not sure if that affected the map's disappearance.

Found my solution by reading the post I was supposed to read before posting Smile (I'm surprised I haven't been shot yet for blindness)
A: It may be in the VirtualStore, if you are using Windows (read this)

[Image: quote_by_rueppells_fox-d9ciupp.png]
(This post was last modified: 01-14-2013, 06:28 AM by CarnivorousJelly.)
01-14-2013, 01:52 AM
Find
TheGreatCthulhu Offline
Member

Posts: 213
Threads: 10
Joined: Oct 2010
Reputation: 32
#25
RE: The Nublette Needs Help With Everything

(01-14-2013, 01:52 AM)Kiandra Wrote: Is it possible to have an action on one map, let's say pulling a lever is the action, effect another map, opening a secret door?

Yes, and it's actually quite simple: all you need to do is set a global variable in one map, and check it's value in another.

These are the (predefined) script functions that you need to use:
PHP Code: (Select All)
void SetGlobalVarInt(stringvarNameint value);
int GetGlobalVarInt(stringvarName); 

Basically, in map1, inside your lever-callback simply check the position of the lever, and encode that position in a global variable using the SetGlobalVarInt() function. (Global variables are visible across maps.)

PHP Code: (Select All)
void OnLeverStateChanged(string &in entityIDint state)
{
    
// The state parameter indicates the position of the lever;
    // it can be  -1 = off, 0 = between, 1 = on 

    
SetGlobalVarInt("lever.map1"state);  // just pass the 'state' parameter along


Note: "lever.map1" just identifies the global variable, you can replace it with anything you want.

Then, in map2, you inside check he variable's value inside the OnEnter() function:

PHP Code: (Select All)
void OnEnter()
{
    if(
GetGlobalVarInt("lever.map1") == 1)  // remember, 1 means "on"
    
{
        
// put the code to unlock/open the door (or whatever) here
    
}

    
// the rest of the OnEnter() code goes here

(This post was last modified: 01-14-2013, 10:19 PM by TheGreatCthulhu.)
01-14-2013, 10:18 PM
Find




Users browsing this thread: 1 Guest(s)