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

Messages - reismahnic

#41
Hello, I am working on a point and click adventure game in which I am swapping backgrounds, with five different backgrounds (realities) for each room.
When the player moves to a different room, I want the 'reality' they are in to carry over to the next room.
This could easily be done by scripting a background change in the GLOBAL script (every room now uses background 2, 3, etc), but the Global script doesn't seem to work with SetBackgroundFrame(1) or (2) etc.
Does anyone know how I could alter background frames in the Global Script, thus changing the default background frame in every room when they enter?
Sorry if I worded this weird. Thanks!
#42
Thanks for playing, Shadow1000!
I'm glad you played both of my games, and found some stylistic similarities.
The same composer worked on both as well.
#43
Yes, my apologies, that is definitely what happened.
I've uploaded a new build in which that isn't the case, so feel free to download that.
Also make sure you are putting it into a separate folder (not playing straight out of the zip folder).
I'm glad that my puzzles have proven to be so tricky, I will continue to perfect my approach to design through confusing installations. :grin:

Quote from: Mandle on Fri 04/12/2015 22:47:45
Ahhhhhh...It's because the author has renamed the game manually after compiling I believe. I've made the same mistake myself.

I think if you edit the .cfg file and change "BusinessDreamJamGame" to whatever the current game name is then it should work, but don't quote me on that...
#44
Oh my goodness, I forgot to link to the game's page.
My apologies.
I'll edit above.

http://www.adventuregamestudio.co.uk/site/games/game/1987/


Quote from: Shadow1000 on Fri 04/12/2015 18:52:09
Maybe this is the first puzzle but I can't find the download link:

Spoiler
I clicked the link in the post thinking that maybe it's on the website but I don't see it there either
[close]

Help!

???

SHADOW
#45
Hello AGSers!
Over the last week I worked on a short game for a jam. Would love if you would check it out.
Story pitch: A woman is called into her boss' office with her job on the line.

Thanks a ton, and if you enjoy this feel free to check out the other two games I've made in AGS this year.
Also maybe check out my website, www.reismahnic.com

Here is the link to the game's page: http://www.adventuregamestudio.co.uk/site/games/game/1987/





#46
Wow, thank you so much haroldw!
I strongly believe that there are a lot of people out there like you who want this kind of experience from a game...
But like you, I also definitely think it's always going to be a 'niche' thing.
I want to work on more projects that are like this one.
Thanks again for the feedback.
#48
Hello, a couple weeks ago I worked with a small team in Portland, Oregon on a week long game jam.
We made this short game called Throw Me In The River.
It is a story driven point and click adventure in which a man examines his life over the course of 80 years.
If you could play it and let me know what you think, that'd be really great!

Here is the link to the game: http://www.adventuregamestudio.co.uk/site/games/game/1943/

Thank you!
-Reis Mahnic





#49
Thank you so much! We really appreciate the input.
Will definitely be working on more AGS games in the future.
#50
Thank you very much, Mandle! I have added screens.

Quote from: Mandle on Wed 22/04/2015 23:05:39
Awesome! Congratulations on releasing the game!

Oh by the way: I think you are supposed to put a few screenshots in the top post to show off your game ;)
#51
Hello,
I'm pleased to be able to show off a game that I made with a team for Ludum Dare 32!
I've never made a complete AGS game before (toyed around with it), and we only had 48 hours to make it!

If you could play it and let me know what you think, that'd be really great!
The AGS link is here... http://www.adventuregamestudio.co.uk/site/games/game/1914/
And, our Ludum Dare page is here! http://ludumdare.com/compo/ludum-dare-32/?action=preview&uid=52764

Thank you so much for your support!
-Reis Mahnic





#52
Project:
Departure- a peri-apocalyptic adventure in which a troubled writer finds she may be the only person left in the world after a week in seclusion.

Details: Jessica, a writer who just can't figure the protagonist of her novel out, has been living in her best friend's cabin in the Pacific Northwest for a week in complete seclusion.
When she emerges and heads into town to pick her son up from her friend, she finds that the entire city of Portland is abandoned, and realizes she may be the only human left on earth.

Positions Available:
I need someone to help me with art and hopefully animation. The game runs at 640X480, and the screenshots attached demonstrate what I've got. If you wanted to look into working at a higher or lower res, we could definitely look into it.
As most of the 20 minute demo is plotted to take place in the Pacific Northwest (Portland area), there would be some pretty fun forest and urban environments.

Deadline:
I want to have a fully featured 20 minute playable demo by six months from now. I am currently doing everything myself. Deadlines would not be strict, but I would want communication.
I've been planning and working on this project for a while now (I'm completely self taught), so this is a passion project and you should definitely feel free to reply anytime. The project ain't going anywhere.

Comments:
Interested parties can reply to this thread or contact me via PM. I CANNOT PAY (it's just me, with no funding). I am looking for someone who is interested in basically partnering on a passion project, and when the demo is done I would look into possible funding.
I know an artist's gotta eat, so I'm looking for someone who is confident that they have a living set up and just want more to put into their portfolio (and work on a project they hopefully think is pretty cool).
You would be in charge of not only creating the assets used, but more importantly, shaping the entire look and feel of the game visually. The following images do NOT represent what you would be 'going for' in any way, if that was not what you wanted, but here is some of the work I've done on the game so far.







Thank you for your time!
#53
And, solved.
Thanks a thousand times over.
#54
Ok, I have rebuilt the rooms in LW BASS. I am much happier with this template for this project.
Everything now works as it should. The only minor issue I'm seeing is that inventory items seem to be overlapping a bit.

(pictured:)


But I also haven't looked on the forums to see if this is a known issue yet.
Thank you so much, everyone. Really helpful!
Can't wait to get back to work.
#55
Thank you for the recommendation, Cassiebsg.
I see that the BASS is already sitting in my AGS folder.
Is there a way to move to this template without having to sacrifice all my hotspots, etc, or should I just be starting from scratch (which is fine, I understand).
#56
Ok, got it set up.
It DOES display at every hotspot click, and DOES display the correct hotspot number.

No, this is not room 3, although THANK YOU for reminding me that I should probably not use room 3 when it comes to that (I have rooms 1 and 2, but not 3).

Monkey, the reason I chose this template was that I wanted a two-click interface. One button interacts, one button looks. And that's it.
I'm very adamant about that (my grandmother should be able to play this game). Would you recommend going with a simpler one, and if so, which?
Lemonhead seems to have filled XALARCOST with features that, while useful for a lot of people with specific needs, I may not be needing.
The main reason I chose it was just having a two click interface, and hopefully retaining an inventory. I'm also having an issue where SOMETIMES clicking one a door once will take me to another room,
but depending on where the hotspot is placed it SOMETIMES doesn't, instead requiring a DOUBLE click.  What do you recommend I do? Should I continue along with this template?

As always, thank you.
#57
Ah! Here is the full function.

Code: ags


function on_mouse_click(MouseButton button) {
	// called when a mouse button is clicked. button is either eMouseLeft or eMouseRight, unless you custom handle inventory clicks
	
	// custom click handling within inventory window
	if (gInventory.Visible == true) {
		InventoryItem*i = InventoryItem.GetAtScreenXY(mouse.x, mouse.y);
		if (button == eMouseLeftInv) {
			if (mouse.Mode == eModePointer) {
				if (!i.IsInteractionAvailable(eModeInteract)) {
					player.ActiveInventory = i; // select the inventory item that player clicked to be the active inventory cursor
				}
				else i.RunInteraction(eModeInteract);
			}
			else if (mouse.Mode == eModeUseinv) {
				i.RunInteraction(eModeUseinv);
				if (i.IsInteractionAvailable(eModeUseinv)) mouse.Mode = eModePointer;
			}
		}
		else if (button == eMouseRightInv) {
			// don't need to check if i != null, because any click that doesn't fall on an inventory item is somehow not counted
			// to make right click get rid of current inventory cursor, we use on_event eEventGUIMouseUp
			i.RunInteraction(eModeExamine);
		}
		return;
	}
	
	if (IsGamePaused() == 1) {
		// Game is paused, so do nothing (ie. don't allow mouse click) (game is paused when GUI interfaces are run) because ProcessClick ignores all GUI interfaces and clicks directly on the game screen, GUI button presses are not handled with this function anyway
		return;
	}
	else {
		// GOT THERE
		tgx = 0; // reset the values so that interactions won't be run twice (the second time under repeatedly_execute) when interacting with another non-gothere hotspot (no "if..return" line, hence interaction will run under on_mouse_click first) right after arriving
		tgy = 0; // ..at a gothere hotspot. these values will again be overwritten when interacting with a gothere hotspot and GoThere() is called
		tfd = eNowhere;
		fx = 0;
		fy = 0;
	}
	
	if (button == eMouseLeft) {
		if (mouse.Mode == eModeWarp) { // for hotspots that are actually exits to another room
			// GOT THERE and DOUBLE CLICK
			__arrived = false;
			mm = eModeInteract; // can't change mouse.Mode directly, if not after a single click the cursor will change and the second click will not be as eModeWarp
			lt = GetLocationType(mouse.x, mouse.y);
			Hotspot*h = Hotspot.GetAtScreenXY(mouse.x, mouse.y);
			lid = h.ID; // to pass to repeatedly_execute to run the relevant interaction
			// GOT THERE end
			// double-clicks are only possible with the warp cursor on exits, treated as a single-click under all other circumstances
			if (lastclick && mouse.x==mx && mouse.y==my) {
				// registers as a double-click on the same spot (within a set delay after the last click)
				lastclick = 0; // resets the counter
				__arrived = true; // makes sure player doesn't bother to walk there first before executing the interaction which is a ChangeRoom, so that player can Warp to next room on double-click on exit. also, now the interaction won't be called under repeatedly_execute
			}
			else {
				// registers as a single-click
				lastclick=1; // starts the counter to see if it can trigger a double click
				mx=mouse.x; // ..that is on the same spot
				my=mouse.y;
				// no return, will lead to ProcessClick later, means no delay before single clicks are processed, i.e. immediate
			}
			// DOUBLE CLICK end
		}
		else if (GetLocationType(mouse.x,mouse.y) != eLocationNothing) { // click on something i.e. hotspot/character/object
			__arrived = false; // GOT THERE disables the regular interaction from running when called with ProcessClick under on_mouse_click if the "if..GoThere..return" line is present, but enables an interaction to be run with RunInteraction under repeatedly_execute if player co-ords match GoThere()'s if GoThere() is called in the interaction
			// GOT THERE following allows appropriate interaction to be called with RunInteraction under repeatedly_execute instead of on_mouse_click when GoThere is called with the "if..return" line
			lt = GetLocationType(mouse.x, mouse.y);
			if (lt == eLocationHotspot) {
				Hotspot*h = Hotspot.GetAtScreenXY(mouse.x, mouse.y);
				lid = h.ID;
			}
			else if (lt == eLocationObject) {
				Object*o = Object.GetAtScreenXY(mouse.x, mouse.y);
				lid = o.ID;
			}
			else if (lt == eLocationCharacter) {
				Character*c = Character.GetAtScreenXY(mouse.x, mouse.y);
				lid = c.ID;
			}
			// GOT THERE end
			if (mouse.Mode == eModeUseinv) {} // don't change the Useinv cursor
			else mouse.Mode = eModeInteract; // if you left-click on a hotspot (or object or character), interact with it. ProcessClick is called later with the relevant mouse mode, hence no return command
			mm = mouse.Mode; // GOT THERE
		}
		else { // click on nothing
			__arrived = true; // GOT THERE disables interaction from running with RunInteraction under repeatedly_execute, but enables the regular interaction to run even after the "if..GoThere..return" line when called with ProcessClick under on_mouse_click in the following line
			if (mouse.Mode == eModeUseinv) {
				ProcessClick(mouse.x, mouse.y, eModeWalk); // even with the Useinv cursor, players can walk as long as they click on nothing. however, the cursor remains the Useinv
				return; // so the later ProcessClick doesn't run again
			}
			else mouse.Mode = eModeWalk; // left-clicking on nothing makes player walk there, or as close as possible. automatically restricted to walkable areas
			mm = mouse.Mode; // GOT THERE
		}
	}
	else if (button == eMouseRight) {
		if (player.Room == MAPROOM) return;
		else if (mouse.Mode == eModeUseinv) {
			mouse.Mode = eModeWalk;
			return;
		}
		else if (GetLocationType(mouse.x,mouse.y) != eLocationNothing) {
			__arrived = true; // GOT THERE
			mouse.Mode = eModeExamine; // right-clicking on something makes player examine it
		}
		else if (mouse.Mode == eModeWalk) {
			mouse.Mode = eModeUseinv;
			return;
		}
		else return; // don't walk when right-clicking on nothing
		mm = mouse.Mode; // GOT THERE
	}

	// GOT THERE automatic version. with this code, it's unnecessary to set individual "if (!GotThere()) { GoThere(x,y); return; }" lines in interaction events code. leave this if you want the GoThere code to be handled automatically, get rid of it if you want to set it manually for each interaction. note that if you use this, it will still make the player go to the walk-to point for manually-called unhandled_events.
	if ((IsInteractionAvailable(mouse.x, mouse.y, mm) == 1) && (player.Room != MAPROOM)) {
		if (!GotThere()) {
			GoThereA();
			if ((tgx != 0) && (tgy != 0)) return;
		}
	}
	
	ProcessClick(mouse.x, mouse.y, mm); // about the same as RunInteraction in terms of what it runs (dunno about walk mode though), which means the relevant function linked under events for the relevant mouse mode in the properties window, except the inputs are different. ProcessClick uses mouse co-ords, RunInteraction uses the hotspot/object/character. if walk-to point is defined, both initiate a blocking walk to that point before the interaction is run unless game.auto_use_walkto_points is changed
}





Thank you so much for being so patient, Monkey.
#58
Ohhhh my goodness, you got me good. :wink:

I have checked the cursor coordinates (thank you for spelling it out to a newb, Monkey), and both the 'interact' and 'examine' cursors are in the same location (the mark is in the upper left hand corner), so I should be good there.
Regarding On_Mouse_Click, there are MANY references to this in the GlobalScript.
I have copy/pasted one of them here, but I wasn't sure if you want me to post the entire GlobalScript (it's very long)?
Code: ags


function on_mouse_click(MouseButton button) {
	// called when a mouse button is clicked. button is either eMouseLeft or eMouseRight, unless you custom handle inventory clicks
	
	// custom click handling within inventory window
	if (gInventory.Visible == true) {
		InventoryItem*i = InventoryItem.GetAtScreenXY(mouse.x, mouse.y);
		if (button == eMouseLeftInv) {
			if (mouse.Mode == eModePointer) {
				if (!i.IsInteractionAvailable(eModeInteract)) {
					player.ActiveInventory = i; // select the inventory item that player clicked to be the active inventory cursor
				}
				else i.RunInteraction(eModeInteract);
			}
			else if (mouse.Mode == eModeUseinv) {
				i.RunInteraction(eModeUseinv);
				if (i.IsInteractionAvailable(eModeUseinv)) mouse.Mode = eModePointer;
			}
		}
		else if (button == eMouseRightInv) {
			// don't need to check if i != null, because any click that doesn't fall on an inventory item is somehow not counted
			// to make right click get rid of current inventory cursor, we use on_event eEventGUIMouseUp
			i.RunInteraction(eModeExamine);
		}
		return;
	}



I'm sorry if this is not what you're looking for. Please let me know if there's anything else I can provide.

There are two other script modules in XALARCOST (or default AGS?): GUIColors and KeyboardMovement_102.
However, neither of them make any reference to on_mouse_click. GlobalScript is the only one that does. And it does a few times (and even more in comments).
Thanks!!
#59
So.
1. hBedroomSuitcase_Interact definitely IS listed, right below hBedroomSuitcase_Look.
2. I'm gonna be totally honest here, I don't know how to check the cursor hotspot coordinates. I'm sorry...
I did read the instruction manual, but I cannot for the life of me remember this or where it may be listed.
3. The hotspot does seem to be enabled. For example, as I said, the 'look' command works just fine.

However, it seems that you got banned for that post.
I'm not sure why... can anyone explain (slash help)? I'm really sorry if my post got you banned...
#60
I should mention I'm not getting errors of any kind.
The game runs without any issues.
SMF spam blocked by CleanTalk