Show Posts

You can view here all posts made by this member. Note that you can only see posts made in areas to which you currently have access.

Messages - Snarky

Pages: [1] 2 3 ... 221
The Rumpus Room / Re: The Ban Thread
« on: Today at 10:49 »
An uncle of mine, great dog lover, was in a similar situation, and decided the dog had to be put down. If a dog can't be controlled and attacks people, that's just not tolerable.

And since this post puts me off the forum for the next 24 hours, I'm locking the thread in the mean time.

General Discussion / Re: Alternative Knowledge
« on: Yesterday at 17:26 »
It's theoretically possible, and intelligence agencies have been known to use similar techniques against each other and against activist groups, but man what a waste of time it would be! Like the Internet doesn't generate enough stupidity on its own.

This sounds like a very reasonable approach. Good job on the rewritten file format! One thing, though:

If I understand it correctly, when loading a game, the current game state is not discarded, but simply overwritten with the data from the save. So that means that anything not overwritten (because of incompatibility) will retain whatever state it currently has. I wonder if that's really the best way to do it. Would it not be safer to discard all the current game state and start from a "blank slate" before loading the save? That way a load would be deterministic: the resumed game would never vary depending on the state before load. Otherwise I can imagine a lot of very strange and hard-to-debug bugs.

Of course, if a load can fail and you want to be able to cancel out of it and go back to the game you were playing, that might complicate things. But if that's something you can now do even in the user script inside resolve_restored_game() – because that's what CancelRestore is for, right? – I assume you do have to back up the game state somewhere else first anyway.

Another point: Is it possible to get the game version of the savegame that is being loaded? I can well imagine that the resolve_restored_game() function might need to have different cases to deal with different past versions.

One thing I don't see in the LoadedSaveInfo is RoomCount. Now, I can totally understand if adding a new room (or removing a room – particularly if it's the room the player was in when the game was saved!) is such a big change that there's no way to reconcile it, but I just thought I'd ask.

General Discussion / Re: Alternative Knowledge
« on: Yesterday at 09:42 »
Having said that, you guys really do bring my piss to a boil!!

I'm glad to hear it, because the feeling is definitely mutual.

I wrote a longer post, but then I remembered that anything that perpetuates the "discussion" merely plays into the hands of the fringe theorists, so I'll just sum it up: Bullshit.

The Rumpus Room / Re: Return of the BANished!!
« on: 22 Jul 2016, 16:43 »
My sentence was longer than 12 hours. Whyyyyy?!?!

Because a day consists of 24 hours?

Puzzle difficulty should be completely independent of story importance. Ideally you want your players to spend most of their time trying to figure out how to scrape gum off a desk or find the phone number of the video store, not stopping the Satanist conspiracy to drain the Pacific.

Also, if it's not a standard inventory or dialog puzzle, you don't want it in your game. No gameplay hybridization, original twists on the formula or unusual elements are advisable. Remember: A creative gameplay mechanic is why Insult Swordfighting is so reviled. Ideally, all puzzles should follow the exact same template: Pick up inventory item, combine with another inventory item, use on hotspot/give to character.

Adventure game players by definition have nothing better to do with their time, so take the opportunity to really set the stage up front. Will they be able to properly appreciate the story you've concocted without a complete history of the world in which it is set? I should think not! Can you really care about this Gabriel Knight fellow when you don't know what his childhood was like?

And for the sake of realism, make sure to have them play through a few "regular days" in the main character's life before anything interesting happens. A few hours in, the impact will be so much greater!

Whether the answer is "yes", or "no", and unless I'm missing something, this code cannot work in any case -- since there is no surface release or game rendering after each pixel writing.
there should be a surface release and a Wait(1) for each pixel writing. Otherwise how do you expect to see anything reflected to the screen?

The effect, if it worked, would be the whole trail erased at once. The surface is released (line 19 in Matti's edited version) once the entire canvas has been processed. I assume that's the intended effect.

Also I don't understand what's array "c".

Presumably an array of color values for each trail.

wondering what happens when loops take too long for the program to refresh the screen at 40 frames per second.

AGS always runs all the code associated with each frame before displaying it. Once it's done, it checks if 1/40 second has passed (or whatever the game speed is), and if there's time left it waits until the right amount of time has elapsed, displays the frame, and starts processing the code (both AGS-internal and scripted) for the next frame.

So if the script takes more time than that, the game will simply hang until the script is complete, and then move on to the next frame immediately. If this happens every cycle, the effect will be that the game runs more slowly than the game speed (and it can cause the audio to break up, if the audio buffer runs out during the processing).

One caveat: There is a safety feature built in that ensures that if a loop repeats more than a certain number of times in a single cycle, it will break, closing the game, though it can be disabled with the keyword noloopcheck.

Beginners' Technical Questions / Re: Compile error
« on: 19 Jul 2016, 15:41 »
Are you keeping it in a Dropbox folder or some other cloud storage/syncing place?

Running slow is one thing, but if it's not working at all it would be interesting to find out exactly why. There are really only two possibilities: either the if (surface.GetPixel(cx, cy) == c[n]) test isn't returning true, or the surface.DrawPixel(cx, cy) command isn't actually drawing black on the background. It should be easy enough to figure out which one it is (e.g. instead of color 0, try with color 7; or put a debug message into teh body of the loop).

Anyway, this might be a simpler and more efficient solution: If you only have a few of these light cycle trails, and if they don't intersect or overlap in any complex way (i.e. one trail crossing in front of another trail in one place, but behind it in another), you could draw each of them on a separate object, and when it's de-rezzed you can just clear, delete or hide it.

How did you intend this to work? Would the backslash be part of what the character says? (If so, weird.)

In many programming languages, a backslash at the end of a line is a sign to "ignore the line break": that the next line is really a continuation of this line. If that's how the AGS dialog script parser interprets it, the next line won't be understood as a separate script command, and the lines are probably wrong.

I'm not sure whether that by itself causes the overflow, or whether it throws off the parser completely so that all the following lines get interpreted wrong.

In any case, just avoid it.

The Rumpus Room / Re: Icey games' thread
« on: 17 Jul 2016, 01:43 »
This topic has been locked, with discussion continuing here:

General Discussion / Re: Alternative Knowledge
« on: 16 Jul 2016, 14:52 »

(And watch the video at the bottom of page that in just a few minutes of viewing time knocks 99% of "Alternative Knowledge" into a cocked hat!)

I'm sorry to say that I think Maddox's video is utter crap. It's not a good presentation of the scientific method in the first place (the model is highly idealized and simplified), it is simply not true that there can't be good reasons to believe something without going through that particular process, and his examples elide the distinction between "the experiments don't support the hypothesis", "experiments have not been carried out (yet)" (which isn't an argument either way), and "no experiment could possibly show whether the hypothesis is true". Overall, a terrible, terrible job of explaining the process of rational thinking.

Reichstag fire
Used by Hitler to pass an emergency decree to suspend civil liberties in order to counter the ruthless confrontation of the Communist Party of Germany.
1933 - 1945 (12 years)

While it is often supposed that the Nazis were responsible, historical evidence tends to indicate that it was in fact the work of a lone madman, which Hitler merely capitalized on.

The Rumpus Room / Re: *Guess the Movie Title*
« on: 16 Jul 2016, 14:33 »
Pan's Labyrinth isn't with Nazis. The bad guys there are Falangists. :P

The Rumpus Room / Re: *Guess the Movie Title*
« on: 16 Jul 2016, 09:44 »
The Great Escape (regular bike version)?

Jesus, that indentation! :~(

Otherwise the logic looks correct. However, isn't DrawingColor 0 transparent rather than black? While I don't remember off the top of my head what happens when you draw with transparent in different circumstances, it seems plausible that in this case it would just leave the color that is already there. (AGS color handling is messed up, yo!)

This approach is extremely slow, BTW. It would probably be faster to simply wipe the screen and redraw all the other trails (which you'd have to keep track of, of course).

The Rumpus Room / Re: Return of the BANished!!
« on: 15 Jul 2016, 20:56 »
I was toying with forces I did not comprehend. Opening that gate to the netherworld at a whim, never asking whether I would be able to close it, should something try to pass through...

The Rumpus Room / Re: Return of the BANished!!
« on: 14 Jul 2016, 10:33 »
Longer than you think! 8-0

There have definitely been lawsuits over companies releasing software that include mp3 technology (though I don't know off the top of my head if they've gone after players that only do decoding, or just mp3 encoders). But certainly the risk of getting sued for having mp3 audio in your game is minuscule.

Most of the mp3 patents have expired by now. There's apparently some debate about two or three that might still be in effect (which might only cover certain special cases that may not apply to AGS), but they should all be gone by the end of next year in any case:

I legally could not use their point-and-click interface, regardless of name or content, if they had PATENTED it (which in fact they haven't).

Patents expire after a set amount of time.

The second point here overrules the first: The patent term is 20 years from filing (and you normally have to file for a patent within one year of making an invention public), so if Sierra had patented the point-and-click interface, that patent would now be expired. (Anyone remember how in the late nineties, people were nervous about GIF files because there was a patent on the type of compression it uses?)

Pages: [1] 2 3 ... 221