Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Monsieur OUXX

#61
I'm looking for an AGS engine plugin that would let me use any third-party language, do do stuff that I can't do with AGS.
There use to be quite a few : Lua, Python, C#...
However it seems that all of them are now lost, broken or not compatible with the latest AGS.

Does anyone have a suggestion?
#62
(This is meant to be a funny thread in reference to a funny fictional feature of the late AGS 2.x)

So at the moment I'm really, really studying the underlying construction principles of point-n-click games. I mean I'm going beyond writing roadmaps with the number of rooms, the connections between rooms, the number of objects and that sort of standard planning.

I've extracted some very abstract core principles that end up being pretty much a bunch of lists. These are lists of entities types : types of puzzles, types of areas in a game with several locations, types of obstacles, etc.

I've reached the point where I'm thinking "If I had too much time on my hands I could create an adventure game generator". Of course I'm saying that as a joke, as the task would be HUGE, programming wise. But it's the first time that I'm thinking it could be done with a sufficient level of quality (the player wouldn't notice). With the help of those lists and metrics, the game could be randomized and generated by a computer, and still be fun -- just the same way a computer can already build a (good) randomized dungeon and looting system in an action-RPG, or just the same way some games have simple randomized quests, as in the old "desktop adventures" series from the 90's or many games today.

Imagine the face of the wannabe point-n'-click creator if he could actually create a full-length point-n-click game by just clicking a button! Then of course he/she would still need to apply a "skin" to it (well-written dialogs and nice graphics), but the underlying game would be there, would be entertaining, and would be solid (well-balanced in difficulty, clues-dropping, no dead ends, and all that).

Also from a more serious perspective, if I was making adventure games for a living I would seriously consider implementing that tool, for quality control of full-length adventure games. The tool could in turn produce the actual roadmaps (meant for developers and artists) like the ones that are normally hand-made by the project manager or the game designer. That would probably save one to two months of planning and design at the beginning of every new game.
#63
Here is some non-trivial information about this attempt:
- Godot recently got a big boost (both in features and popularity and visibility) which made it move from "promising" to "the main 100% free rival to Unity".
- Escoria is a library/framework written in Godot script that implements in Godot all the tedious things expected in an adventure game (save/restore games + actions verbs + high level scripting language ("Esc" language) to script dialogs and custscenes).

The mild weakness of this is that Escoria had a flamboyant start but then became immediately obsolete when Godot moved up to Godot 3.0 and then 3.1. It broke some things.
The guys behind Escoria made it (mostly) work with Godot 3.0. There's a branch for that in their github, conveniently named "Escoria 3.0". It's good enough for any adventure game, really. Escoria also has a branch for Godot 3.1 and 3.1.1. But they're not actively developing those ones.

I've been trying to run the demo game of Escoria 3.0 in Godot 3.0.x (3.0.6) and I got a crash after a few clicks  :( But maybe it's just me who doesn't know enough yet. I'll keep you updated on that.

If anyone has a suggestion for another set of tools to develop a point n click game in Godot, then they're welcome to reply here.

#64
I've come to the conclusion that it's very hard to coordinate a project consisting of a team of several people when everything is made over the Internet.
I'd like to try the experience of making a game with someone that I can meet physically on a regular basis.

So... Anyone from Örebro, Sweden?
#65
The "latest news" on the site home page are from 2014. Ouch!
If there aren't any news then they should be removed altogether.

By the way I'm a web developer so I can pimp up the site a little bit (it's not even smartphones-compatible) (I'm not saying that condescendingly)


#66
I'm pondering the creation of a branch off "develop" to add PNG support for DynamicSprite.CreateFromFile. It shouldn't be too hard I believe. It's just a matter of adding a call to this (library "loadpng") where the native Allegro call would normally be done.

Is there any licensing issues though? I mean with libpng and zlib.


For the record, the interesting code is here:
Code: ags

Function "LoadImageFile" in /Engine/ac/global_dynamicsprite.cpp
Function "LoadFromFile" in /Common/gfx/bitmap.cpp
Function "LoadFromFile" in /Common/gfx/allegrobitmap.cpp


#67
Suggestion: Add a static function String File.ResolveFile(String fileName) that resolves the full path just like File.Open would, with the possibility of using $APPDATADIR$, $SAVEGAMEDIR$, etc in the file name.
Because I'm frustrated of spending 15 minutes every time I start a new game just to find the right folder where I should place my files. I literally resolve it through trial and error every time.
#68
(AGS 3.4.1-P4)

OK so this will sound dumb but...

Simple code :

Code: ags

  String fileName = "$APPDATADIR$/FILE.png"; 
  File* f = File.Open(fileName, eFileRead);
  if (f==null)
    AbortGame(String.Format("Can't find file '%s'", fileName));


I've tried to put FILE.png in the following places :
( where "/" is the game's project folder)
Code: ags

/_Debug/FILE.png
/_Debug/Data/FILE.png
/Compiled/FILE.png
/Compiled/Data/FILE.png



The file is not found.
I've also built the EXE to be sure.

I am confusion ??????????????????????????
#69
What is the state of the Editor? I've tried running AGS.Editor.Desktop but it can only read a project, not start one. I can see that stuff has been implemented to read from some json files, but do you have a dummy json file to use ?
#70
I'm fiddling with the ResourceSelector branch and I've noticed how FilesView has a private IFileSystem. It's supposed to be populated by FileView's constructor : FilesView(IFileSystem files, ...).
However I can't seem to understand where and how this constructor gets called. Is it with _filesView = rightPanel.AddComponent<FilesView>();?

The reason why I want to know this is because I want to know how the FileSystem is decided. In the master branch, the Resources system has stuff like this :
game.Factory.Resources.ResourcePacks.Add(new ResourcePack(new FileSystemResourcePack(AGSGame.Device.FileSystem, AGSGame.Device.Assemblies.EntryAssembly), 0));
There, the FileSystem is passed explicitly. It's done twice: One for the mobile file system, and one for the Desktop file system.

But then how does it work with FilesView? Why and how is the FileSystem chosen implicitly there?
#71
It's very simple but I can't find it.
how to completely empty the player's inventory? Google didn't help and F1 didn't help. Or maybe I was using the wrong search terms.

EDIT : found it

Code: ags
 int ii=0;
  while(ii<Game.InventoryItemCount){
    cleech.LoseInventory(inventory[ii]);
    ii++;
  }
#72
Once again a dumb issue that will be fixed in two seconds by someone.

- I have a room (room 6)  that is NOT the starting room of character cChar
- cChar is NOt the player character
- At some point, I do "player.ChangeRoom(6)" in order to go to that room.
- Just to be sure, in Room_Load of room 6, I do "cChar.ChangeRoom(7); Wait(1);" to force-remove cChar.

...And yet after the fade-in, cChar is here in room 6, in all his glory.
I can't make the damned character f**k off.

what am I missing?
#73
thank you to whoever upgraded the forums. It finally provides all the comfort that can be expected in 2018. Love it! Especially the "insert hyperlink" button that finally works when some text is already highlighted.
:-* :-* :-* :-* :-*
#74
Is it still possible to run an AGS game from the current game? The 2nd game is compiled already.

More generally:

       
  • are there any restrictions (run as admin, etc.) ?
  • in which folder should the 2nd game be placed for best results?
  • I have the sources of the 2nd game but it would be much MUCH simpler to just run it as is. If needed I can upgrade it to the current engine version.
#75
Hints & Tips / Return of the Obra Dinn
Fri 07/12/2018 12:42:58
Hello!
I have two simple questions :

1) What do you enter for a public execution?
Spoiler
there's this guy who gets shot on order by 5 or 6 men, and I don't know what to enter. When I select "shot (by gun") then the game wants me to enter the name of the killer... It makes no sense?
[close]

2) Can ytou re-visit a memory without actually walking there?
Spoiler
In the notebook it shows you where the memory happened, or which memories involved one specific character, but... then when you cick on the memory nothing actually happens. Is there a way to "teleport" to the memory without having to painfully walk there and use the chronometer?
[close]
#76
I've installed the sources of scummvm and I'm running it in step-by-step debug because I had this crazy idea that I'd love to dump all graphics of Cruise for a Corpse into some sprite sheets.

There are several reasons :
1) I think the graphics are gorgeous (in an Amiga 64-colors way) and I think it's a pity that they're not used as golden-age pixel art tribute as often and as easily as Lucasarts graphics.
2) I realized that this game could be much much more fun :
     - if there were some proper music and sound effects (the current music is painful because chiptune doesn't fit 1930's French opera/jazzy music well)
     - if the interface was slightly pimped up (less pixel hunt and more hinting)

The fact that the story isn't really branched (no big choices to make) makes it easy to revert-engineer.

I'd love to make it available as a template for AGS and then see what happens.

EDIT: I was daydreaming and I'm wondering who currently owns the rights to this? It was Delphine software --> Virgin --> ??
#77
This is meant to be an extensive list of every possible type of adventure games puzzles ever used in any type of videogames.
You're invited to complete it.

If you read carefully, you'll see that some puzzles are very generic and don't need to be repeated in the list. They can be summarized in an asbtract description, as it's meant here. don't focus on the situations, focus on the mechanism.

Put thing in hole, aka key
There's a hole with a specific shape, and you must find an object tat fits in it.
Seen in : the dig, where you don't really know what you're doing but every hole seems to have a crystal with the same shape meant to fit in it.

Tool
There's a contraption that can work only with a specific tool, that you're expected to identify. You're supposed to understand that it's irreplaceable because of its shape and size.
Seen in: any game with a screwdriver. the tool can have an approximate subsitute, like the spear head in Fate of atlantis or the Monkey wrench in MI2.

Alternate reality
You can visit the same room either in another dimension or in a different time period, and whatever you do here will affect the state of the room in the other "reality".
Seen in : Day of the tentacle (future/past rooms), Unavowed (when you're a ghost nobody sees you while you visit the room)
See also : Only when the lights are off

Remote trigger, aka magnet
The lever in the room is blocked by something that you are never meant to overcome, but you can remotely trigger the object with some other device.
Seen in : Monkey Island, when you steal the key using the magnet. Nelly cootalot, when you work out the lift controls to drop a crate onto the villain.

I can't walk there
There's a part of the room where you can't go but there's counterintuitive way to go there.
Seen in : Fate of Atlantis, when you crawl down the ventialtion shaft to spawn in a different room behind the robot statue. Flight of the amazon queen, when you're in the amazon city and must take the proper corridors to wlak on the other side of a channel.

Trap
There's a critter in a room that walks around seemingly randomly and you must wait for the right time or push it to catch it.
seen in Fate of Atlantis, when you put the ribcage in a pond and wait for a crab to get caught. Also seen in Fate of Atlantis when you wait for the jungle rodent to move in front of the right jungle path.

Hidden dialog
There's a dialog option that will appear only if you follow a specific dialog options sequence and/or exhaust all dialog options. If you choose the wrong option then the dialog "reboots" and the hidden option goes unnoticed.
Seen in : Fate of Atlantis, when you try to convince the bouncer to let you in. Any dialog line where you criticize Madame Sophia brings you back to dialog start. The final winning option is a compliment.

question-answer fight
Any sentence said by the other characer must be answered by you with the corresponding line of dialog until you win.
Seen in : Monkey island (swordfight)
Seen in : Monkey island 3 (insults fight on the seas)
Not to be confused with : memory game, where you have to reproduce a sequence (e.g. the banjo fight in Monkey Island 3)

Have someone else do it
You cannot perform the action yourself but you can ask your sidekick to do it.
Seen in : fate of Atlantis (ask Sophia to do it)

Wait for the right time
The action that you perform will succeed only if you click at the right time / if it matches some not-too-obvious ingame timer.
Seen in : Monkey Island 2 when you must spit precisely when the wind is blowing.

The parrot knows
A dialog option in suggested to you by a character that seems to talk unrelated nonsense.
Seen in : Fate of Atlantis, when the parrot says "hermocrates", which is actually the answer to Sternhardt's riddle. Until then the player character is offered a seemingly infinite number of wrong answers.

Follow the navigator's head
In every room the player must consult a tracking device that tells him to go North, South, East or West.
Seen in : Fate f Atlantis, when you check the orichalcum fish on a string. Monkey Island, when you ceck the navigator's head.
See also : Listen to the noises

Listen to the noises

In every room the player must listen to a sound that tells him/her to go North, South, East or West.
Seen in : Telltale Monkey Island.
See also : Follow the navigator's head

Trigger something in a different room
You activate something in the current room, expecting it to have a consequence in another room, off-screen.
Seen in : last Crusade, in the catacombs, when you unplug the plug on the ceiling and it emptues the pond the room above.
See also : Pull something from a different room

Pull something from a different room
In the passageway leading to the previous room where you left an object, you can still (barely) see that object. You find a way to pull it into the current room.
Seen in : Fate of Atlantis, when you whip in a statue head into the current room, in the Crete labyrinth.
see also : Trigger something in a different room
Empty pond/fill pond

Approximate recipe
You must follow a recipe but you use substitue ingredients, based on puns or resemblance.
Seen in : Monkey Island (use black powder instead of pepper). Kyrandia 2 : all the magic spells.

Disguise
You are forbidden to walk past a certain area unless your character is wearing some outfit
Seen in : Last crusade, where you have to dress as a nazi or as a waiter.

Coordinates
Your guide asks you "where do you want to go?" and you must answer with a set of coordinates that were provided to you separately. Only the proper combination of coordinates works (e.g. "12 degrees South, 6 degrees North")
Seen in : Monkey Island 2 (to find the wreckage of the ship) , Fate of Atlantis (when you go down the entrance of Atlantis in a scaphander)

Repeat until it works
Trigger a room element until it does something. The first attempt doesn't work. You're being given a hint that, even though unsuccessful, every attempt is not the same as the previous one.
Seen in : (I can't remember, but basically the character says something different every time he fails, and eventually succeeds)
See also : Exhaust neverending dialog

Exhaust neverending dialog
Say the same line of dialog repeatedly to a character. He will refuse to do what you ask every time, but finally accepts afyer many attemps.
You're usually given a different answer at every attemp, to give you a hint that each attempt is different.
Seen in : Monkey Island, when you ask the navigator head to give you his magic necklace, and he'll refuse numerous times. All you have to do is to insist.
See also : Repeat until it works

did you listen to what I said?
A character asks you a question about something he said earlier in the game. You need to give the right answer.
Seen in : Fate of Atlantis, when Trottier asks you what his favorite passtime is.
See also : Did you read the book?

Did you read the book?
A character asks you a question about something you're supposed to have read. It's a game designer trick to make sure you're ready to go on with the adventure.
Seen in : Fate of Atlantis, when Trottier asks you questions about the contents of the Lost Dialog to prove to him that you have read it.
See also : Did you listen to what I said?


What would you add to this list?


#78
Hello,

In the same spirit as "AGS commercial boot camp" or other threads, here is the "AGS like a pro" video series.

You can find it here on Youtube : Playlist

First episode:
https://www.youtube.com/watch?v=X6WXIduwU0Q&list=PL773FMqtyjdtU5YxSY62nUKNmW3wShEvH

Full playlist :
01 intro
02 online storage
03 conflicts
04 git
05 git 2
06 git 3
#79
EDIT: (that's frustrating, lately I find the solution to my problems the exact second after I post and it's too late to take it back)
Solved: array inventory does not exist until you create at least one inventory item in the editor.

Spoiler

Um, that's embarrassing for me: how do you do inventory[id] in the latest AGS? I can't find array inventory anywhere. I tried the help, I tried player.inventory, game.inventory...
[close]
#80
EDIT: my bad. It's caused by right-to-left resolution of parameters. There's absolutely no bug here.

Spoiler

You can reproduce this bug like this :

(in AGS 3.4.1.14 aka 3.4.1 Patch 2)
1) Create a module
2) Create code as follows :
Code: ags

int val = 0;
int GetValue(String name) 
{ 
    val++;
    Display("value returned for %s is : %d", name, val-1); 
    return val-1; 
}
void PassParams(int a, int b) 
{
    Display("a=%d, b=%d", a, b);
}

void repeatedly_execute()
{
   PassParams(GetValue("a"), GetValue("b"));
} 


This produces following result on-screen :
Code: ags

Value returned for a is : 1 //EDIT : In my own code I didn't add the "for a" and "for b" bits. that made me realize that everything works as expected.
Value returned for b is : 0
a=1, b=0


a and b are reverted!

I suspect (total shot in the dark) it's caused by the way symbols are managed in the list of function parameters. There are two parameters called "GetValue" (same name) so, regardless of their individual value computation, maybe they're stored in an unordered fashion that causes AGS to fail restituting the computed values in the correct parameter slots?
[close]
SMF spam blocked by CleanTalk