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 - RootBound

#1
So a person walks into a doctor's office, and the doctor says, "You're too healthy. I'm prescribing a headache. I'll send the prescription in to your pharmacy."

The patient goes to the pharmacy, who say they received the prescription and they do have the headache in stock, but the patient's health insurance won't pay for it because it's a name brand and not a generic, with a price for 90 days of $35,000 dollars, which exceeds the plan's coverage. The pharmacy tells the patient they need to call their insurance.

The patient calls their insurance and waits on hold for a while. When a representative picks up, the representative explains that they need a Prior Authorization from the doctor. This is a basically a note from the doctor saying the patient needs the medication.

The patient says, "Isn't that just a prescription?"

The representative says, "No, this is a note from the doctor saying the patient actually needs the medication."

The patient calls back the doctor's office and says, "They need a Prior Authorization."

The doctor's office says, "Sure, we'll send that right in."

The patient goes back to the pharmacy, and the pharmacist says, "Sorry, the insurance is still saying they won't pay for it."

The patient calls the insurance again, who says, "We never received the Prior Authorization from the doctor's office."

The patient says, "Isn't there anything you can do? My doctor says I really need this headache."

The representative says, "Let me transfer you to another representative."

The patient waits on hold for awhile again.

The second representative says, "I dug around and figured out a way to override this. That means we'll pay for 90% of the cost of the prescription, so that leaves you with a co-payment of only $3,500 for the 90 days, or only $1,166 per monthly refill."

The patient goes back to the pharmacy counter, and the pharmacist says, "We haven't received any override information from the insurance. Do you want to pay the out-of-pocket price?"

The patient sits down in the waiting area and says, "God, my head hurts."
#2
So I've noticed that people often ask if it's possible to make platformers with AGS, and they get the same answer: Yes it is, here's an example, and no, we don't support tile-based drawing of rooms.

I'm trying to expand that answer to: Yes it is, and here's a working game template, and yes, the template lets you draw tile-based room backgrounds.

So far the code has been full of hurdles, but I've made great progress today, so I wanted to announce the existence of this endeavor.

For now, enjoy the results:

#3
Maybe I'm the only one who wants this, but if you have a big scrolling room in your game and you want to take a screenshot of the whole room at once, with characters and objects overlays and so on all in their proper places, here's a function you can use to do that!

The screenshot will be saved to where you have your saved game files.

NOTE: If you have custom viewports or multiple cameras, this will not work properly. You'll need to disable them and go back to the default game viewport and camera, and re-enable them afterward.

Please let me know if you have any questions (or if you find any bugs)!

EDIT: Code revised as suggested by Crimson Wizard below.

Code: ags
//place this function in global script, then call it in on_key_press, or when clicking a GUI button, etc., whatever you prefer
function take_fullroom_screenshot()
{
  PauseGame();
  //saves original camera coordinates and checks if camera was tracking player character
  int oldCameraX = Game.Camera.X;
  int oldCameraY = Game.Camera.Y;
  bool WasAutoTrackingOn;
  if(Game.Camera.AutoTracking == true){
    WasAutoTrackingOn = true;
  }
  else{
    WasAutoTrackingOn = false;
  }
  //if you want to hide GUIs and the mouse cursor, feel free to do so here. 
  //or you can also specify the render layer in the parameters of every DynamicSprite.CreateFromScreenShot() instance.
  
  //creates dynamic sprite, pans camera around room, takes screenshots of each part of room,
  //splices them onto dynamic sprite, and saves sprite to file
  DynamicSprite* BigScreenShot = DynamicSprite.Create(Room.Width, Room.Height);
  DrawingSurface* DrawOntoBig = BigScreenShot.GetDrawingSurface();
  DynamicSprite* PartialScreenShot;
  for (int y = 0; y < Room.Height; y += Game.Camera.Height)
  {
    for (int x = 0; x < Room.Width; x += Game.Camera.Width)
    {
        Game.Camera.SetAt(x, y);
        Wait(1);
        PartialScreenShot = DynamicSprite.CreateFromScreenShot();
        DrawOntoBig.DrawImage(Game.Camera.X, Game.Camera.Y, PartialScreenShot.Graphic);
    }
  }
  DrawOntoBig.Release();
  BigScreenShot.SaveToFile("$SAVEGAMEDIR$/BigScreenShot.pcx");
  //removes dynamic sprite, returns camera to original coordinates, and reactivates auto-tracking if it was on
  BigScreenShot.Delete();
  PartialScreenShot.Delete();
  Game.Camera.SetAt(oldCameraX, oldCameraY);
  if(WasAutoTrackingOn == true){
    Game.Camera.AutoTracking = true;
  }
  //if you manually hid GUIs and the cursor, re-enable them here!
  UnPauseGame();
}
#4
BURN DOWN THE CLOSET: A GAME ABOUT BEING AGENDER

Help a frustrated agender person create an outfit that even society itself cannot impose a gender on... if you dare! Fumble your way to 5 different endings!

This game was created in less than one month for the March 2025 MAGS (Monthly Adventure Game Studio) game jam, with the theme "LGBTQ."

AGS DATABASE ENTRY: https://www.adventuregamestudio.co.uk/play/game/2834/

ITCH: https://rootbound.itch.io/burndownthecloset


#5
So this grew from the thread about my current game-in-production and it made more sense to start a new conversation here.

What is your process for designing puzzles? Here's mine (which I'm looking to refine)

Designing puzzles is hard. Maybe that's why there's so little participation in the (shameless plug) Puzzle-Making Practice competition. My own process varies from game to game, so I'll stick to the current one.

The first question I ask is: What kind of game am I trying to make? Classic third-person P&C? First person? Visual novel? Even platformer? In the early stages of design, it may not always be clear what subgenre is the best fit for your project. And if you're not sure, puzzle design will feel extremely haphazard. (This won't necessarily change later.  ;) ) But the kind of game you make narrows the kind of puzzles that can be put in the game (or does it? Can you, for example, solve a murder in a platformer? I'd love to try).

A second part of this is who are you designing for? Experienced adventurers, beginners, or a wider audience? How difficult do you want the game to be? Do you care more about story or obstacles, or both equally?

Once you have a subgenre (or two, or three...) and a target audience, then what?

What I do is:

1. Start with story. What is the player/protagonist trying to achieve, story-wise? It doesn't need to be complicated. It could be simply "Get to the other end of the dungeon," and that's the entire game, room after room. It could be "Solve a murder." It could be "Become president."  Here's what's important: the overarching goal will help determine the obstacles.

2. Where does the game take place? Setting has a huge effect on puzzles. Solving a murder in the wilderness is going to feel different from solving one in the city, and different from solving one on a spaceship. Get a good feel for your setting and the places for obstacles will become clearer.

3. Push-and-pull between puzzle and setting. This is where it helps to be flexible. Once you have a goal and a setting you can both refine the setting around the puzzles and also refine the puzzles around the setting. Play with them like clay until they fit together--add rooms, delete rooms, change what type of obstacle is in a room. But...

4. Do the obstacles make sense? Why is that key under the sink? Who hid it there and why? Or what about that bookshelf in the basement? Would the homeowner really want to go down all those stairs to get at it? If you don't know the ins and outs of everything, the player won't be satisfied with either the setup or the solution.

5. Is the puzzle solution too clear or too obscure? This is where I struggle. And where test players come in. As @CaptainD suggested in the other thread, it's really hard to gauge difficulty when you're the one making the puzzle. How do you give clues without giving the whole thing away? How do you know when not to give clues and trust that the player already has enough information?

I'm really interested in how others design puzzles in your own games. Do you have a set of principes you follow? A process of steps like (or unlike) the one I listed above? How do you figure out difficulty, clues, and teaching the player the tools without too much hand-holding? How do you make sure the puzzles make sense within the world?

I'm not so much interested in what to avoid (although that's important) but more so in what you gravitate toward.
How do you do it? Are there reasons you do it that way?

Thanks in advance for any answers! ;-D
#6
(Since there were no other entries besides mine last time, I'll just go ahead and start a new thread. Any objections?)

UPDATE: VOTE BY COMMENTING BELOW. CRITERIA BELOW.

Welcome again to Puzzle-Making Practice: Where you design the solution!

Last time we had a situation where you had to break yourself out of an asylum. Now we need to break into a museum!

The background:

You're a crook who steals valuable art to sell on the black market. One of the most prestigious museums in your area now displays a priceless painting. The good news: You've broken into this museum before, so you know the security systems. The bad news: this new priceless painting is displayed in an extra-protected case!

The situation:

It's nighttime. You're on the roof of the museum. There's a security camera but you've already disabled it without being caught. It looks a little weathered and is slightly falling loose from its pole. Next to you is a glass skylight through which you can look down into the display room and see the display case with your prize.

The display case is bulletproof glass. It has a digital pad requiring a pin and a fingerprint to open the case.

You can see apertures in the walls of the room that likely send invisible lasers across the area. A night watchman stands in the corner, eyes on the case at all times. There are more security cameras, one in each corner of the room. Other priceless paintings hang on the walls. You know from past experience that each has a motion sensor behind it that will trip an alarm system.

The roof also has plenty of possible anchors for ropes or hooks, and you can also see down two other skylights into adjacent rooms. One has more alarm-rigged paintings on the walls, but only one video camera, no lasers, and no night watchman. Unfortunately, its only exit leads to a hallway with more cameras--and, more importantly, the front exit, but not to the room with your prize. The two rooms do share a wall, however.

The third skylight leads to the restroom, where there are no security devices of any kind. Outside the restroom is a hall that does lead to the room with the prize, but there is another night watchman posted outside the door, and another fingerprint and pin pad to get in.

There is also a fire escape leading off the roof of the museum, and an adjacent building with a roof close enough to jump to.

In your thief's kit you carry the following:

-A long sturdy rope
-Another rope with a grappling hook
-A set of traditional lock-picking tools
-A list of people whose fingerprints will be accepted by the pin pads
-A single smoke bomb
-Goggles to protect your eyes from smoke (but they are not night-vision goggles)
-A sack to protect and hide the painting once you steal it
-A bad copy of the painting you mean to steal--it might fool an amateur for a minute, but even a fool would know it was fake after looking at it for longer than that.
-A set of screwdrivers
-A hacksaw strong enough to cut metal
-Wire cutters
-A truncheon for self-defense
-A powerful flashlight with multiple brightness settings
-A smart phone with a good camera

The goal:
-Get into the museum, get the painting, and get out, without getting captured.

The Rules!

Participants respond to the set-up by writing entries that must do the following:
1. Use at least 3 of the provided elements (inventory, NPCs, a piece of the room like a cabinet or faucet etc.)
2. Give a step-by-step walkthrough of your puzzle solution.
3. Don't add new elements. For example, if the room is a forest, breaking a thin branch off a tree makes sense unless the host said the trees were huge and tall. But adding a hollowed-out stump with a bear sleeping in it is too specific. Assume all important elements have been mentioned by the host.
4. Keep any dialog elements summarized rather than typing out the whole conversation (for example, "threaten the mailman", "ask the child for advice", and so on, instead of giving every spoken line).

Each contest runs for two weeks to allow for a good number of entries, and then it switches to voting for one week. The participant whose solution gets the most votes gets to come up with the next scenario! (Please also provide a link to these rules).

Voters use the criteria of:
a) how logical the puzzle seems
b) how creative or unexpected (but still sensible) is the use of elements
c) how satisfying is the solution (Is it too simple? Way too complicated? Or just right?)

Entries accepted through the end of February.

Have fun!
#7


SOLATI: Tethered in Time
A first-person puzzle game in the epic tradition of Myst and Riven

After a cataclysmic event that nearly destroys the Earth, a small remnant of humanity awakes many thousands of years in the future, in a sealed-off community within a gargantuan alien spacecraft. Why are they here? Can they ever escape? A small band of those intent on escaping went missing years ago, but now they've left a message: the unseen aliens have time travel. Maybe the way to escape from this far-future prison is to prevent their imprisonment in the first place. It won't be easy. In fact it will be nearly impossible. But that's where you come in.




There's so much to say about this project. It's been such a long time coming and is still so early in development. How early?

ART: <1%
PROGRAMMING: <1%
STORY: 70%
PUZZLE DESIGN: 30%
MUSIC: 95%

I've been working on the music for two while I made... 5 other games? It's been quite the journey. I wrote a devlog about it here, the text of which is below, within the spoiler tag:

Spoiler
2/3/2025

The idea for this game started a handful of years ago, before I got back into game development, with the original intention to make it a novel. As I began to fulfill a longtime fascination with making games, though, I realized the story fit even better with the game medium, and that such a project could become what I've always wanted to do—make a first-person puzzle game like the Myst series, where exploring and interacting with an otherworldly setting progresses a compelling story.

The seed of Solati had been fully planted. But at the time the project felt like a distant fantasy, far too large for one person to make, and certainly beyond my own art and programming skills.

But I nurtured it with the things I could do—write story, design puzzles, and compose music. Over the course of the last two years, while I made Tunnel Vision and My Siblings, the Stones, as well as a total of five game jam entries, I worked in the background writing puzzle and story notes in a sketchbook alongside rough pencil drawings, and creating the music for the major game locations.

As I finished smaller games, my skills evolved much further than I expected, and all the while I kept Solati in the back of my mind as "The Big One," the game I would make when I had finally reached an advanced level. But before I got there, I kept tinkering with another larger game I'd had on the back burner for a while, the other passion project I'd long wanted to pursue—a low-res faux-3D Train Simulator.

In two aspects this game finally pushed me to the point where I could make Solati—art and programming. Even though Traction: 2.5-D Trainsim is very far from finished, its programming needs grew so complicated every step of the way that a first-person puzzler like Solati began to look much simpler by comparison, even though it would be a much longer game. In terms of art, drawing object after object for Traction helped me figure out both a style and a process, two factors that had kept me from diving into anything for Solati beyond pencil sketches.

So I started drawing character portraits and test backgrounds, one for each of the "realms" in Solati, to see how fast I could do so. And after drawing three or four of each, suddenly, the prospect of drawing a hundred of them didn't feel so overwhelming anymore. Complicated, yes. Time-consuming, yes. A marathon, absolutely yes. But doable.

What was more, after a two-year journey during which I'd grown massively as a composer, I had now finished nearly all of the music for the game, which reinforces the story and gives me existing mood and direction to help steer the art and puzzles of each environment. This means if I falter and again feel like the game is too big for me, I nonetheless have nearly a full hour of orchestrated music, close to the entire soundtrack album, that I can hear to experience the emotions of the story and, hopefully, keep me going.

It's hard to describe the feeling that yes, this can actually happen. I don't yet know whether I'll make this a commercial game or if I'll do a Kickstarter or a Patreon, or any other form of monetization. It's too early for that. And I will likely pause development of Solati at times to work on Traction. But now that I've cobbled together enough art to make a teaser trailer, I can say with certainty that this much is true: the journey has begun. It won't be a short one. A seedling takes multiple seasons to mature and establish. I hope you'll follow along with me as I make it happen one small piece at a time.

For now, here's the teaser trailer. I hope you enjoy watching it as much as I enjoyed making it.
[close]

And yes, I cobbled all my existing art and part of the opening cinematic cutscene music into a TRAILER! Enjoy!


#8
Hey all,

I'm currently designing the gameplay for a project and am trying to figure out how to make a fairly important part of the game work.

The concept is this: In the game there is a big GUI that looks like a smartphone. When "AR mode" is activated, the phone follows the cursor, and the phone screen reveals hidden objects in the room. I don't want the objects to visibly "appear" but to naturally slide into view--for example a large object could be only half visible, with the half outside the phone GUI remaining hidden--so toggling Object.Visible or Object.Enabled won't really work.

The only way I can think of to attempt scripting this is to have two versions of each room, with one version of the room hidden offscreen, and for the phone screen to be a viewport and camera that lead to the hidden version of the room which contains the hidden objects to be revealed by the phone screen.

Is this the only way to do it? This is going to be a big project with a 50+ rooms, so having two different versions of each room feels like a potentially very inefficient method. Can anyone think of a better approach?

Thanks very much.
#9

BAD TO THE CORAL: The most relaxed you'll ever be while frantically trying to stop environmental destruction.


A classic fast-paced arcade-style game with calming sound effects. This is my MAGS entry for November 2024, theme "Body of Water."

Uses the Tween module by @edmundito
Huge thanks to @Nahuel for testing

Protect a delicate coral reef from an endless cascade of garbage. Gain reef health by letting red algae accumulate and by stemming the flow of trash for extended periods. Get extra points with combos. How long can you keep the reef alive?

AGS DATABASE LINK:
https://www.adventuregamestudio.co.uk/site/games/game/2803-bad-to-the-coral/

OFFICIAL PAGE: https://rootbound.itch.io/bad-to-the-coral



#10
MODULE: QuickFill 0.1
EDIT: UPDATED TO NEW VERSION WITH BUG FIX.

Hello all! Are you sick of writing a ton of lines when defining the contents of an array? Especially when your project uses a million arrays? Quickfill is a tiny new script to save time and space by allowing you to fill an array all at once in one line of code.

Huge thanks to @Crimson Wizard for advice on how to script this. My first module!  ;-D

This is the initial release, version 0.1. Please report any bugs so I can fix them!!
DOWNLOAD HERE: https://www.mediafire.com/file/92lm7w2endt2mrv/QuickFill.zip/file

IMPORTANT: This module works only with AGS 3.6.0 or later.

Within this module, five functions are offered, allowing you to fill five types of arrays: int[], float[], bool[], String[], and Point*[].
These will produce the same result as doing it the long way.

For example, instead of doing this:
Code: ags
int MyArray[6];
MyArray[0] = 640;
MyArray[1] = 480;
MyArray[2] = 800;
MyArray[3] = 600;
MyArray[4] = 1280;
MyArray[5] = 720;
You'll simply do this:
Code: ags
int MyArray[];
MyArray = quickfill_int_array(6, "640,480,800,600,1280,720");

Script API:

To use the functions, first you declare whatever arrays you want (leave the size of the array blank. The function will declare the size later, so you will get an error if you do so now):
Code: ags
int MyIntArray[]; //sizes undefined
float MyFloatArray[];
bool MyBoolArray[];
String MyStringArray[];
Point* MyPointArray[];  //Note that you use Point *pointers here, not just regular Points.
Once you've declared your arrays, the specific functions available are:
Code: ags
int[] quickfill_int_array(int size, String values)
float[] quickfill_float_array(int size, String values)
bool[] quickfill_bool_array(int size, String values)
String[] quickfill_String_array(int size, String values)
Point*[] quickfill_Point_array(int size, String values)
You call the functions with the syntax below. The first parameter is always an int determining the size of the array, and the second is a String listing the values you want for each item.
IMPORTANT: Note the slight differences in punctuation within each function's String parameter, depending on the type of array.
Code: ags
//for ints, separate items in the String parameter by using commas.
MyIntArray = quickfill_int_array(5, "0,111,-20,36,-4"); //This line is all you need!! MyIntArray is now filled!

//for floats, the same syntax, commas to separate:
MyFloatArray = quickfill_float_array(4, "1.22,8.04,3.6,99.1"); //That's it!

//for bools, use 0 and 1 to represent true and false
MyBoolArray = quickfill_bool_array(7, "1,0,0,1,1,0,1"); //This fills the array with "true, false, false, true, true, false, true"

//Strings are more complicated, since we want them to be able to contain commas. Therefore, we separate String items using an asterisk.
//IMPORTANT NOTE: for this function, you must place an asterisk after the final item, not just between each one!
MyStringArray = quickfill_String_array(5, "Hello, world!*Hi, how are you?*I'm good, thanks. And you?*Just splendid.*Glad to hear it!*"); 
//all punctuation marks except the asterisks will be retained within each String.

//Finally, we use an asterisk to separate Points as well, since each point has both an x and a y coordinate.
//NOTE: Just as with the String array, you must place an asterisk after the final item!
MyPointArray = quickfill_Point_array(6, "1,4*10,200*-20,8*1400,35*-206,32*18,20*"); //this fills the six Points in the array with: 1,4 ; 10,200 ; -20,8 ; 1400,35 ; -206,32 ; 18,20

And that's it! I hope this saves you lots of time and scrolling through endless lines of array definitions. :)
#11
Hey everyone,

I'm excited to announce my next game in production, a Train Simulator made in AGS;-D  It wouldn't have been possible without the Mode7 module by eri0o, which is still experimental and may change quite a bit.

I've been wanting to do a game like this ever since I got a taste of what AGS can do in this vein while I was making TUNNEL VISION. I don't know what it is about faux-3D environments with billboard sprites, but it gives me far more satisfaction than true 3D environments ever did. Long live faking it! :-D

Planned features:
-640x400 resolution (I'm getting around 50fps so far, which is great)
-5 different environments to play/drive in.
-"Relax mode" where you simply let the scenery go by, and enjoy the view. It will be somewhat customizable.
-"Task mode" where you have different goals in each environment, such as delivering passengers, dropping off freight cars, or clearing obstructions from the tracks.
-A high score system to keep track of your best runs.

As of right now, things are still in the VERY early stages, but I've finally got the hang of the Mode7 module after a long break working on other games.

CURRENT PROGRESS:

ART: 5% (basically just the tracks, terrain textures, sky, and some of the distant backdrops are done - all the passing objects and GUIs are placeholder graphics right now).
SOUND: 0% (that will probably come last).
PROGRAMMING: 8%? I have no idea. This is the sort of thing where unexpected hurdles come up frequently, so it's probably more like 5%.
GAME DESIGN: 35% - I'm still seeing what it's possible to do within a faux-3d environment, as well as trying to make "task mode" as engaging as possible. I've got some solid ideas for goals to accomplish in a few environments, but not for all of them.

Last but not least, HERE IS A VIDEO. As I said above, all the passing objects and GUIs are placeholder sprites, but I've been having a great time with it. Thanks for reading!  :)



#12
Finally made time to refine a previous MAGS entry enough to upload it to itch.io  :)  This was entered for the MAGS March 2024 theme "Cut It in Half."

MORT: Manageably OK Response Team

The Manageably OK Response Team is in trouble--Pink MORT has been captured! Control Green MORT and Purple MORT (as well as a helpful drone) in a short split-screen single-player puzzle adventure. Defeat guard bots and navigate challenging obstacles as you get closer to your destination. Don't be fooled--this isn't a platformer but a point-and-click with platform mechanics! You'll need to do some logical thinking. Good luck!

PLAY IN BROWSER HERE:
https://rootbound.itch.io/mort-manageably-ok-response-team

AGS DATABASE LINK:
https://www.adventuregamestudio.co.uk/site/games/game/2764-mort-manageably-ok-response-team





I had a lot of fun making this game, and am especially happy with the split-screen mechanics. The MORT characters are obviously Roger sprite paint-overs, but otherwise the graphics are all original. Music is from opengameart.org. Thanks to everyone who played the MAGS version and helped fix the many many bugs that arose. There's still one bug outstanding, but I have been unable to reproduce it. Please let me know if anything breaks.

#13
I searched the forums for raycasting but didn't find anything useful.

Would it be possible to create a moving-shadow effect like this, where shadows change shape depending on the position of the light source?



I feel like it should be possible with raycasting and with using either two versions of a background (dark and light) or with simply editing a black dynamic sprite (or series of sprites) every frame, using some kind of mask. Can this be done in AGS script?

EDIT: if raycasting is too resource-intensive, I also had an idea to use overlays whose size and rotation changes with the light source position, but I feel like it would still need raycasting to determine the blocking width of non-circular objects.

#14
Welcome to another installment of puzzle-making practice, where you decide the solution!

The Rules!

Participants respond to the set-up by writing entries that must do the following:
1. Use at least 3 of the provided elements (inventory, NPCs, a piece of the room like a cabinet or faucet etc.)
2. Give a step-by-step walkthrough of your puzzle solution.
3. Don't add new elements. For example, if the room is a forest, breaking a thin branch off a tree makes sense unless the host said the trees were huge and tall. But adding a hollowed-out stump with a bear sleeping in it is too specific. Assume all important elements have been mentioned by the host.
4. Keep any dialog elements summarized rather than typing out the whole conversation (for example, "threaten the mailman", "ask the child for advice", and so on, instead of giving every spoken line).

Each contest runs for two weeks to allow for a good number of entries, and then it switches to voting for one week. The participant whose solution gets the most votes gets to come up with the next scenario! (Please also provide a link to these rules). Current entries until March 20th.

Voters use the criteria of:
a) how logical the puzzle seems
b) how creative or unexpected (but still sensible) is the use of elements
c) how satisfying is the solution (Is it too simple? Way too complicated? Or just right?)

WITHOUT FURTHER ADO:

CROSS THE RIVER

The Situation:
You're a volunteer disaster relief worker on your way to a rescue after a devastating flood. But you can't get there--a bridge across a river has washed away. The river has returned to normal levels but no constructed crossings remain. The current is strong and muddy, unsafe to swim.

The Goal:
Get across the river safely. Ideally with your first-aid kit intact.

What's Around You:
--The river: a raging muddy 60-foot-wide death trap.
--A wooded area with many giant piles of leaves and sticksLarge driftwood limbs, half buried in mud.
--Pieces of garbage washed up along the shore, including household goods and items you might find in a home garage, all water damaged.
--A person with a fishing pole standing in the shallows, struggling to reel something in.
--A beachcomber searching for anything valuable that's washed up, and carrying a very large backpack full of whatever he's collected.
--A gigantic alligator sunning itself on the other side of the river (the person with the fishing pole keeps eyeing it cautiously).
--One broken concrete pillar standing in the middle of the river (30 feet away), which is all that remains of the bridge, and is slightly wider at the base.
--Several ducks on the pillar base.
--What looks like a submerged car below the surface of the river, just barely on this side of the broken pillar.

What You Have:
--Your beat-up tiny sedan
--A bungee cord about ten feet long (the river is 60 feet wide)
--A large emergency flashlight
--A flare gun with two flares
--Four plastic traffic cones, which can float but not hold much weight
--A fully stocked first aid kit
--A six-pack of bottled water rations
--A handheld radioA box of matches
--A box of large trash bags
--A spare raincoat A fire extinguisher
--Your EMT training manual (you haven't finished reading it yet)
--A large empty plastic cooler

Entries accepted through June 2nd.

Good luck!
#15
OK, so I'm playing around with my background assets for the new AGS demo game (I figured I'd give my best shot at building a prototype to share, since it's supposed to be a tiny game, what could go wrong?  (roll) ), and I found something weird. Using AGS 3.6.0.58, blank template.

Part of the closed-door sprite disappears in game. Just two pixels. Those pixels are present in the sprite window and in the room editor. The shape of the sprite matches exactly the shape of the doorway. What is going on?  ???


#16
So when I click the mouse, none of the script from the global on_mouse_click runs. I have a message right at the beginning to test if it runs, and the message does not display. I'm using the blank game template. Version 3.6.0.49.

Here's the entirety of the room script:

Code: ags
function room_RepExec()
{
  Region *LeftOrRight = Region.GetAtScreenXY(mouse.x, mouse.y);
  if(LeftOrRight == region[1]){
    if(player.ID != 0){
    cPurpleMort.SetAsPlayer();
    }
    if(mouse.GetModeGraphic(eModePointer) == 45){
      mouse.ChangeModeGraphic(eModePointer, 46);
    }
  }
  else if(LeftOrRight == region[2]){
    if(player.ID != 1){
    cGreenMort.SetAsPlayer();
    }
    if(mouse.GetModeGraphic(eModePointer) == 46){
      mouse.ChangeModeGraphic(eModePointer, 45);
    }
  }
}

function room_Load()
{
  Mouse.Mode = eModePointer;
  cGreenMort.ChangeRoom(3);
  if(cPurpleMort.Room == 3){
    cPurpleMort.x = 80;
    cPurpleMort.y = 145;
  }
  if(cGreenMort.Room == 3){
    cGreenMort.x = 240;
    cGreenMort.y = 145;
  }
}

And here's the Global on_mouse_click:

Code: ags
function on_mouse_click(MouseButton button)
{
  if (button == eMouseLeft)
  {
    Display("This click was processed!"); 
    if(GetLocationType(mouse.x,  mouse.y) == eLocationNothing){
      Room.ProcessClick(mouse.x, mouse.y, eModeWalkto);
    }
    else{
      Room.ProcessClick(mouse.x, mouse.y, mouse.Mode);
    }
  }
  else if (button == eMouseRight)
  {
  }
}

Any idea what I'm missing?
#17
Hello all,

I've finally finished my second non-MAGS game. This one went faster than the last one because I had a lot more help. :)



In My Siblings, the Stones, a dropout mage finds herself stranded in an unfamiliar village, and must help the locals solve a thorny problem in order to find her way home. Explore a history-infused settlement, discover unexpected clues, and learn who can help you as you navigate a damaged land. And maybe, with persistence, begin to learn magic.

Playtime: 30-45 minutes


DOWNLOAD HERE:
AGS Database
Itch.io







Features:

-Atmospheric, story-driven gameplay -- much more story-based than puzzle-based, which is different for me.  :)

-Intuitive one-click interface

-Music by @Eric Matyas  - Thank you so much for providing such a large database of free music. It really elevates the game.
-Background photos by Mathias Lang -- sourced from OpenGameArt.org

And a HUGE thanks to @Wiggy and @Rik_Vargard for volunteering to be play-testers and working hard to improve the final game. You both made such a difference!

I hope you enjoy playing!
#18
EDIT: The results are in! We have winners!
-----------------------

Hello all,

I've been given the go-ahead to resurrect a long-dead competition from almost twenty years ago: a puzzle design competition to practice your skills at creating logical solutions to constrained situations. It's just like playing an adventure game except you get to make your own solution!

Here are the rules:

The host provides a narrow scenario:

A. No more than two rooms, described in detail. For example, if the rooms is indoors, what type of building is it in? Are there windows? Is there furniture? Shelves attached to the walls? Pipes? Describe everything that is part of the room itself, especially things that might be interacted with, like control panels, climbable trees, openable air vents, and so on.

B. A very specific goal to accomplish. Escape the room? Burn it down? Find a specific hidden item? Open a safe? Restart a car? Convince an NPC to leave? Convince an NPS to give you needed information? The goal should require multiple steps.

C. At least 10 specific items, NPCs, or available interactions. This includes inventory, logical things that would be lying around, people, and room components as mentioned above. This should be a long enough list that participants can come up with multiple solutions. There should be no intended "correct solution."

Participants write entries that must do the following:

1. Use at least 3 of the provided elements (inventory, NPCs, a piece of the room like a cabinet or faucet etc.).
2. Give a step-by-step walktrough of your puzzle solution.
3. Don't add new elements. For example, if the room is a forest, breaking a thin branch off a tree makes sense unless the host said the trees were huge and tall. But adding a hollowed-out stump with a bear sleeping in it is too specific. Assume all important elements have been mentioned by the host.
4. Keep any dialog elements summarized rather than typing out the whole conversation (for example, "threaten the mailman", "ask the child for advice", and so on, instead of giving every spoken line).

Each contest runs for two weeks to allow for a good number of entries, and then it switches to voting for one week. The participant whose solution gets the most votes gets to come up with the next scenario! (Please also provide a link to these rules).

Voters use the criteria of
a) how logical the puzzle seems
b) how creative or unexpected (but still sensible) is the use of elements
c) how satisfying is the solution (Is it too simple? Way too complicated? Or just right?)

Since I'm hosting the first round, I'll provide the first scenario. I'll check back to answer any questions and can moderate future rounds if needed. The first scenario is below, in its own post, to provide a model for future hosts.
#19
Hey all,

For those of you who do your own art (and especially those who use realistic or semi-realistic styles), I'm wondering what processes you all use to draw backgrounds. Do you start with a sketch, etc., what order do you draw things in, how do you decide on palettes, color, lighting and shadows... and so on.

I find as an artist without professional training (though I have read books on it lately), that it takes me a long time to finish a background, and I'm hoping some of the more seasoned artists here might have advice for speeding up the process.

Thanks in advance for any advice!
#20
UPDATE: VOTING IS CONCLUDED. We have a winner! See comments below.

--------------------


Hello all,

@Mandle and I have settled of the following theme:

After the Fire

Something has burned. A meal? A house? A forest? Perhaps simply a piece of pottery in a kiln?
Or has it burned metaphorically - burning your bridges, torching your relationship, or anything else where a "burn it all down" metaphor would be appropriate.

The caveat is this: whatever type of fire event you choose, the story must take place after that event. The focus should be on aftermath, repercussions, fallout... whatever comes "next."

Bonus points if you can avoid a big dump of exposition, but those points will be up to the voters, of course.  ;)

My understanding is that the hosts may also write entries, but we'll see whether I have enough time.

Deadline is November 30.

SMF spam blocked by CleanTalk