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

#1341
I can confirm that the debugger related crashes no longer occur in beta 9. I also experience less of a framerate drop when running with the debugger than I did before, but perhaps that's just my imagination. Anyhow, great work, CJ!

Wow, the new dialog option display system looks great. Just the kind of customizability I've been hoping for almost since I started using AGS. Would it be too much to ask for a similar feature covering the actual execution of the dialog? Such as:

Code: ags
on_character_say(Character* Char, String dialog)


That would, for instance, let you display each dialog lines in any way you like, change talking views to reflect emotion (you would need some special functionality to play back the talking animation lipsynced though) or parse dialog to a conversation log - the main reason that I currently use my own Say function and don't benefit from the built-in dialog scripting, since every topic would just contain a dialog_request call anyway.
#1342
Hmm, strange. I haven't done much testing of this functionality, but Jigsaw.GetPuzzleComplete() should work. But I see that I defined the variable jigsaw_won as an int instead of a bool. Perhaps this could cause weirdness.

Could you please try to change the line:

Code: ags
int jigsaw_won;


to:

Code: ags
bool jigsaw_won;


and see if it changes anything?
#1343
Awesome topic, Obi! I offer you evidence of Lionel's little-know stint as a professional yo-yo player:

#1344
Haha, Andail. Yeah I get that a lot lately - Stickam totally ruined my mystique :). You're the first person to say they thought I was chubby though, but I've heard everything from me being a teenage girl to a long-haired dark metal fan (not that those two are mutually exclusive).

I guess you must all have missed my Ben Jordan cameo:

#1345
Damn, looks like I have some competition for that Village People gig.

#1346
Quote from: Pumaman on Sun 14/09/2008 15:03:45Hmm, it seems like the editor is having trouble parsing the call stack when the game quits with the error ... but I've tried this a few times myself and haven't been able to get it to crash. Would you be able to upload the test game that caused this so that I can see if I can get it to crash too?

I managed to recreate the issue with a single line of code, but it behaves very inconsistently. In my game-in-progress, half the time it triggers a scripting error message from the debugger, half the time it simply crashes the editor. When I add the line to a newly created default game and run it with the debugger, the game may give the correct error a couple of times. But if I keep testing, the game starts locking up and must be ended through the task manager. If I run the same game without the debugger, the game always aborts with the correct error message (invalid coordinates).
For a long time I thought I couldn't replicate the editor crash with a newly created game, but it simply took one more step: After experiencing the frozen game, try opening another (or the same) game in the editor. The editor will crash with the "Error: Object reference not set to an instance of an object" message reported above.

The line causing the problems (in a 640x480 32-bit game) is:
Code: ags
DynamicSprite.CreateFromBackground(0, 600, 100, 41, 80);


Edit: Later in the evening I experienced the same type of engine crash after calling DynamicSprite.Resize with a zero width/height.
#1347
Wow. I'm very happy to see such a large turnout for the revived Photoshop Phateverday. Apparently I wasn't the only one who missed the activity during its long hiatus. So many great entries to choose between, but after much deliberation the judges (namely me, myself and I) have come to a decision.

And the winner is... Obi!

His entry may be one of the more obvious, but that played in his favor as his was the first entry to make me laugh out loud. I also appreciate the attention to details like the shadow on the ceiling. And let's be honest, you could paste that Lionel Richie picture into any image and make it instantly funny. Good show, man. Congrats!

I hope you guys had as much fun photoshopping and guessing the song titles as I did (though I'm kicking myself for not doing The Smiths' "Vicar in a Tutu"). I look very much forward to see what Obi comes up with for the next round. Thanks for participating, everybody!
#1348
You've captured the Maniac Mansion style pretty well. But the perspective of the service elevator (I assume we're supposed to be seeing the inside of the box?) is way off. From this perspective you shouldn't even be able to see the righthand side of it. Try using the perspective of the chairs for reference. The left side is parallel to the rear wall, so the line indicating depth should be horizontal. As it is now, it looks as if the top and bottom are sloped and the box is only 10 cm deep.

I'd also add some variety to the top cupboards. There's too much repetition as if the doors have just been copy-pasted. Try replace a few cupboards with open shelves with items on them.

What's that gray thing below the table, a gas line for the candelabra?
#1349
Hi Kiah. Unless you want to add code to the module itself, the one way to do stuff upon completion is to check the state of Jigsaw.GetPuzzleComplete() in your puzzle room's repeatedly_execute. Like so:

Quotefunction repeatedly_execute() {
   if (Jigsaw.GetPuzzleComplete() == true) {
      Jigsaw.RemovePuzzle();
      player.AddInventory(iKey);
      player.ChangeRoom(5, 120, 64);
      }
   }

Let me know if you experience problems.
#1350
Right you are, LimpingFish!
#1351
I think TwinMoon's entry is:

Spoiler
Joy Division - Love Will Tear Us Apart
[close]

Great song by the way.
#1352
From today (Monday 15th September), you can post guesses on the submitted song titles in the thread. Please use spoiler tags. (In case you're the first to post and have everything figured out, consider not posting the full list but letting others have a chance as well). If your own song title hasn't been guessed by the end of Tuesday, please post it yourself.

Not an entry, but I felt inspired and also wanted to post something for people to guess:

#1353
Quote from: Pumaman on Sat 13/09/2008 14:46:36Hmm I haven't managed to reproduce this yet. Can you run the game without the debugger (Ctrl+F5), and see what error you get?

I cannot reproduce it when the debugger is turned off. Instead, I consistently get the error message:

Quotein "GlobalUtilities.asc", line 174
from "RefractObjects.asc", line 421
from "RefractObjects.asc", line 684

Error: DynamicSprite.CreateFromBackground: invalid co-ordinates specified

Which is also what I get about half the time I try to reproduce it with the debugger turned on. I managed to track down the bug in my own code (it turned out that the area I was retrieving was one pixel too wide because I didn't take into consideration that the top left pixel is 0,0 and not 1,1) and no longer get the bug, so I can only think it's directly related to calling DynamicSprite.CreateFromBackground on an area that is outside the room edges.

I did keep the original code in case you want to see it, but my test room is pretty messy (I use a debug function to drag objects and characters around on the screen with the mouse) so I'm not sure if anybody else would be able to reproduce the error.

#1354
I was playing around with the beta 8 editor and managed to crash it while testing my game. I'm not sure what exactly caused the crash, but I was dragging some lens effect objects (that use DynamicSprites created from the background) outside the screen limits. There does seems to be an error in my own SafeCreateFromBackground code, which is supposed to calculate sprite offsets to avoid invalid coordinates, because while trying to trigger the crash again I got an "Invalid coordinates" message from the debugger. But still, that shouldn't make the editor crash. I can't reproduce the bug consistently, but I've managed to do it three times now (out of ten or so attempts).

First, I get this message, twice:

QuoteError: Object reference not set to an instance of an object.
Version: AGS 3.1.0.55

System.NullReferenceException: Object reference not set to an instance of an object.
   at AGS.Editor.CallStackPanel.RefreshList()
   at AGS.Editor.CallStackPanel.set_CallStack(DebugCallStack value)
   at AGS.Editor.GUIController.ShowCallStack(DebugCallStack callStack)
   at AGS.Editor.AGSEditor._debugger_BreakAtLocation(DebugCallStack callStack)
   at AGS.Editor.DebugController._communicator_MessageReceived(XmlDocument doc)
   at AGS.Editor.EngineCommunication._watcher_Changed(Object sender, FileSystemEventArgs e)
   at System.IO.FileSystemWatcher.OnChanged(FileSystemEventArgs e)
   at System.IO.FileSystemWatcher.NotifyFileSystemEventArgs(Int32 action, String name)
   at System.IO.FileSystemWatcher.CompletionStatusChanged(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* overlappedPointer)
   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)

Then a normal Windows crash message shows up ("AGS Editor for windows has generated errors and will be closed"). The crash data that it offers to send to Microsoft are:

QuoteEventType : clr20r3     P1 : agseditor.exe     P2 : 3.1.0.55     P3 : 48c972db
P4 : agseditor     P5 : 3.1.0.55     P6 : 48c972db     P7 : 46a     P8 : 90
P9 : system.nullreferenceexception

(Not sure if you can use the latter for anything.)

Then the editor closes and leaves me with a frozen game window. Since the game itself doesn't crash, no CrashInfo.dmp is created.
#1355
Hmm, two days worth of stubble, girlfriend going away for almost a week... Challenge accepted, sir!
#1356
Quoteremember that you can't modify the contents of a string

Thanks, this is what I wanted confirmed. I'll just have the linebreak function return the index position of the linebreak instead and perform the splitting of the String in the calling function.
#1357
Thanks for the suggestion, monkey. The point of the functions was mainly to reduce the number of lines in the rest of the script (mostly I never call it on more than two or three values at a time anyway), and initializing the array gets messy. If your function needs to know the size of the array anyway, I might as well just add the number of floats parameter to the beginning of my function to avoid trouble.
#1358
Oh yeah, forgot about that parameter. Actually I am using that, it's just been a while since I wrote the sorting function so I forgot how it worked.
#1359
Great entries so far, guys. Keep 'em coming.

Like SSH said, some of them are quite cryptic - I'm sure I'll slap my forehead when LimpingFish's "crouching melon, hidden rabbit" image is explained. But it's all part of the fun
#1360
Quote from: Pumaman on Wed 10/09/2008 18:50:39No, optional floats are not supported. Floats are 32-bit, and because the optional parameter default values are stored as 16-bit numbers this won't map properly to a float and the results will be unpredictable.

Ok, thanks for clarifying. For now my code seems to work since it doesn't actually use the default for anything except checking whether the player has entered a value or not.

Quotebut until then you can always use the workaround of creating two functions [...]
A bit messy but it works!!

In my case a bit too messy, I'm afraid. My function returns the maximum value out of nine optional float parameters, so MaxFloatValue(float value1, float value2, float value3,  float value4, float value5, float value6, float value7, float value8, float value9) would have to be broken into 8 different functions. If I find that the optional floats cause problems, I'll just create an initial int parameter to specify how many floats to compare.

I also have a question: Is there any way to modify a String using an extender function? Whenever I try to set "this = "blablabla", I'm told that it's a static pointer. I ask because I'm writing a linebreaking function, which I would like to return the first line of the broken String and update the original String to contain the remaining text, but it doesn't seem to be possible.
SMF spam blocked by CleanTalk