Aleph One 1.3b3

Have a question, suggestion, or comment about Aleph One's features and functionality (Lua, MML, the engine itself, etc)? Post such topics here.

Re: Aleph One 1.3b3

Post Apr 21st '19, 23:42

The Man wrote:There are only so many slots in the sound file, and while it’s supposedly possible to add more in ShapeFusion, I haven’t yet gotten that feature to work.


You can add sound slots with Wail.
User avatar

ravenshining
Hawai'i

Post Apr 21st '19, 23:54

Never heard of that, but will examine when I have time to really start developing for Chronicles again (hopefully next month). If you’ve got a link, I’ll take a look at it.

In any case, I suspect going over 256 sound slots is probably a bad idea, unless someone can confirm that the game uses 16-bit instead of 8-bit integers for the sound slot variable.

ETA: I may actually be mistaken about this, as now that I think about it, I may remember something about AOPID using quite a few more than 256 sounds. However, it would still probably be a pain in the arse to keep track of multiple versions of thunder sounds, etc., and the issue with network games would stand. A narrow application, granted, but still.

…nope, Wrk confirmed that he didn’t add enough sounds to surpass 256.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 22nd '19, 12:15

The Man wrote:1. A way to access the frame rate. This would be useful to disable certain graphical additions (e.g. precipitation scripts) if they cause too much lag.

I don't think I would add this or accept a patch for it. We try to run Lua scripts deterministically, and this would break that bigtime.

The Man wrote:2. A way to play sounds with less than 100% volume (e.g., I don't want thunder to play as loudly when players are indoors). I don't know if there's a way to do this without breaking backwards compatibility, but it would be nice if there is.

Lua is just accessing the engine's sound manager here, which doesn't have a way to play sounds with less volume. So it's not just a Lua fix.

This case is an easy one for you to fix though! Just play the thunder from an object outside.
User avatar

treellama
Pittsburgh

Post Apr 22nd '19, 20:16

I don't think I would add this or accept a patch for it. We try to run Lua scripts deterministically, and this would break that bigtime.

I can understand this to some extent, but then it leads us to a problem: there currently appears to be no way to make the execution of certain scripts optional, so from what I can ascertain, if a feature ends up lagging a player’s computer to the point where it’s unplayable, we either have to remove the feature, or maintain two separate branches, or they’re screwed entirely.

So what would you suggest instead? We wound up going with the “two separate branches” route for Eternal 1.2, but I must confess that I don’t really care for this solution, not least because a lot of people probably aren’t aware the precipitation branch even exists. My ideal solution would actually be just to have one map, and if the rain script ends up lagging someone’s game to the point where it’s unplayable, they can select some option in their preferences to disable its execution. However, I don’t see any way to make a Lua script turn off depending upon a player’s preferences, unless I’m missing something.

The completely ideal route would be to allow developers to add new options in the preferences files of specific scenarios, but I’m not sure how practical that would be to implement. If there were a way to use some other setting as a synecdoche for processor speed, that would probably be acceptable.

This would still lead to the question of how to handle precipitation in network games, but at least we could handle single-player games without needing two separate maps. It’s not as though very many people are going to play Eternal or Chronicles in network games, anyway. (On the other hand, plenty of people do play Windbreaker’s maps, at least three of which do utilise precipitation scripts.)

Lua is just accessing the engine's sound manager here, which doesn't have a way to play sounds with less volume. So it's not just a Lua fix.

I don’t really understand what this means. It’s possible to specify volume levels for random sounds, ambient sounds, and sound objects; is the engine’s sound manager unable to access those functions? I’m not disputing your knowledge of the engine; that just seems strange.

This case is an easy one for you to fix though! Just play the thunder from an object outside.

Well… sort of easy. I’d first have to figure out how to get the sound object to be the correct distance from the player to play a sound without playing at 100% volume. I wouldn’t be surprised if someone hadn’t already written a script to accomplish something similar, though. I’ll look next month when I have more free time.

Anyway, thanks for the response.

ETA: I forgot to link the sprite clipping issue. If there’s some way to fix this for 1.3 final, it would be nice. I’m not sure if it’s unrelated to the “sprites disappearing at close range” issue Wrk mentioned above, but it might be. (Though, having looked at again, I’m thinking probably not.)

…There are some other issues with sprite display that may not actually fall under the sprite clipping issue now that I look at it again. I’m actually not sure. Next month, if that’s not too late to submit a bug report, I’ll submit some screenshots.

…There may also be some issues with the OpenGL I used. I’m confused now. IDK. I’ll look later, LOL.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 22nd '19, 20:49

Here are a couple of quick screenshots of the sprite clipping issue, which may actually not be related to the clipping issue Lia described in that earlier thread. This seems to happen most conspicuously with large sprites, which probably isn’t a surprise, and I have no idea what causes it, though it seems to be related to looking up from below polygon boundaries, as I don’t note it in many other cases.

sprite issue 1.png


sprite issue 2.png


This is the southern-central part of the level “Here Comes the Flood” from Marathon Chronicles, for the record. It seems to happen across Aleph One versions and across operating systems; I can provide exact version numbers later if needed. I can also look for a YouTube video that contains an example of the problem, though that might take awhile.

…perhaps this should’ve been a separate thread now that I think of it. Feel free to split it out if needed.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 04:01

The Man wrote:ETA: I forgot to link the sprite clipping issue. If there’s some way to fix this for 1.3 final, it would be nice.


I don't know about your sprite clipping issue, but if you read the more recent responses to my thread, you'll see I solved my sprite clipping issue. I just needed to remove an MML flag that wasn't important to the models I was using anyway.

That said, it would be nice if we could have
TrajansRow wrote:a second depth target for the 3D model shader. That would permit sprites to be depth tested against models, but not walls or floors.
so that we could have fancy 3D models, like a house or a vehicle, that may partially occlude a sprite, without them causing the clipping issue. However, that's a very wishy wishlist item IMHO; who actually uses 3D models that intricate? I'd much rather see my - I imagine much simpler - per-frame 3D model replacement idea implemented, which has already been shot down.

The Man wrote:
Lua is just accessing the engine's sound manager here, which doesn't have a way to play sounds with less volume. So it's not just a Lua fix.

I don’t really understand what this means. It’s possible to specify volume levels for random sounds, ambient sounds, and sound objects; is the engine’s sound manager unable to access those functions? I’m not disputing your knowledge of the engine; that just seems strange.


Being able to specify sound volume like sound objects and ambient sounds do - or even pitch, like random and Physics sounds do - in Lua might be nice, although I don't personally have a need to do this. Along the same lines of using Lua to do things the engine does already, I'd like to be able to tell a monster to move to somewhere other than a polygon's centre (for example, up to a wall) or to start running about randomly. Currently, for random movement, I iterate through all polygons in a level and tell monsters to move to one at random, but this results in them travelling much greater distances than they will naturally.

For my part, when finals are over I'll look into solving the issues Hopper pointed out with my little patch to play theme music over (most) interface dialouges. I always build my copies A1 with it. :-)
User avatar

ravenshining
Hawai'i

Post Apr 23rd '19, 04:28

It already is possible to specify a sound pitch in Lua; it’s just volume that isn’t implemented. Never got why that was. If you look in the Eternal precipitation scripts that use thunder sound effects, they specify sound pitches. The Chronicles scripts do likewise.

I agree that other methods for specifying monster movement would be helpful, particularly for applications like “make monsters run from exploding Juggernauts” and the like.

I’ll test out those MML options sometime next month, probably.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 05:52

There's one glaring issue with Aleph One that no one has bothered to mention so far, and I think it's absolutely critical for 1.3.

It wasn't that long ago, before AO was completely ruined, that a feature existed that made everyone happy. Parades were regularly performed on the streets of every major city celebrating its inclusion in the engine. Before the dark times.

I think everyone knows what I'm talking about. You'd be able to open the chat and type .falg, and the message sent to the other players was hardcoded into the engine. Now, some extremely lame individuals may suggest that generic chat macros allow for this, but these people have BAD RAM inside their brains.

WE MUST REINSTATE THE .FALG COMMAND.
User avatar

Wrkncacnter

Post Apr 23rd '19, 05:59

GERT HPRR AD INRST DTFALG
patrick
末法

Post Apr 23rd '19, 10:29

b0110000101010102

0xg
User avatar

treellama
Pittsburgh

Post Apr 23rd '19, 12:09

The Man wrote:Never got why that was.

I told you why in this very thread!
User avatar

treellama
Pittsburgh

Post Apr 23rd '19, 12:32

I mean, yes, but I don't get why the game's sound manager has a function for pitch but not volume, when the game itself seems to be able to adjust the volume of sounds it plays. Are they implemented using two entirely different methods? That's what doesn't make sense to me.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 13:54

For most sounds, Lua is calling
Code: Select all
void play_object_sound(short object_index, short sound_code);
from map.cpp

For the player sound, it's calling the SoundManager directly:

Code: Select all
void PlaySound(short sound_index, world_location3d *source, short identifier, _fixed pitch = _normal_frequency);


which is why you get pitch control.

I mean, the code is all on GitHub, you can check it out if you don't believe me, even though I did (re)write it.
User avatar

treellama
Pittsburgh

Post Apr 23rd '19, 19:57

That’s what I didn’t get. I still don’t know if I fully understand it, though: is there a reason the same engine function used to play random sounds, which can change both pitch and volume, can’t be called in Lua? It seems like that’s doing much the same thing for individual players on a polygon-by-polygon basis: the difference doesn’t so much depend upon the position of a sound object relative to the player as it does upon which polygon currently contains the player. (A similar deal goes for the ambient sounds defined on a polygon-by-polygon basis, as opposed to ambient sound objects; however, those don’t change their pitch.) It seems like the function to alter sound volume must exist within the engine, but it also sounds like there’s some reason Lua/the sound manager can’t call it. That’s what I don’t get (…I think).

(I can look at the source code later when I have more free time, but I don’t know how much I’ll comprehend; my C++ knowledge has withered substantially in the last fifteen years. The code excerpts you posted do make sense, though.)

One final (for now, at least) question: do you have any recommendation on how to handle the precipitation lag issue, besides maintaining two separate branches? It would be nice to include those scripts in the official release of 1.3 without potentially rendering the game unplayable with really old computers.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 21:08

None of the Lua sound calls apply to random sounds. They're all map objects or the local player.

As for precipitation:

  1. Optimize the precipitation script to the extent possible. Minimize effect creation by reusing effects, use multiple particles per effect. Unmerge Snowfrog for an optimized example
  2. Optimize the map. Limit geometry to 1024 polygons, add negative space. Remember Hastur's worshop? Eliminate walleye vision. The single-threaded view tree is the FPS killer in Aleph One right now, but it only happens on giant open maps with far too many polygons. Remember, it's Marathon, not Unreal.
  3. Turn off bloom. Bloom has to render everything twice, which taxes the CPU a lot. Turning it off should improve the frame rate considerably.
  4. If and only if none of that works, why can't you just make the precipitation require a plugin, and leave it up to the user to turn it off?
User avatar

treellama
Pittsburgh

Post Apr 23rd '19, 21:23

Re: sound calls, fair enough. No quick way to make a Lua sound call use the subroutine from random sounds, I take it?

As to precipitation, is there a way to make Lua execution (1) dependent upon a plugin (2) that only executes in specific levels? That would actually be ideal, but I hadn't been able to figure out how it would work. Probably some function I didn't notice, or else I just don't properly understand how Lua function calls between multiple scripts work. It would also help for a couple of Chronicles levels that redefine specific OpenGL shapes for specific levels.

I'll look into those other suggestions later. Some of the levels actually do have fewer than 1024 polygons and/or not all that many cases of wide-open spaces ("Eat S'pht and Die" in particular - last I checked, it only had 625 polygons and didn't have any areas that looked like they'd have broken Infinity), but I suspect some of the maps can be optimised a bit further in some of those respects. I think most of the precipitation scripts probably only use one effect each, but haven't double-checked.

Thanks again BTW.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 22:47

The Man wrote:As to precipitation, is there a way to make Lua execution (1) dependent upon a plugin (2) that only executes in specific levels?

I know I've told Eternal devs exactly how to do this before, but it requires AlephOne 1.3. I can't remember if you were there for those discussions or not, but I never really heard a reason not to just go with that option. Requiring a plugin to turn on the precipitation seems like an obvious solution to me.
User avatar

Wrkncacnter

Post Apr 23rd '19, 23:00

as usual i am burnt the fuck out and not even following along very well here but

is that solution to put a simple "return true" kind of function in the plugin, and have the map precipitation scripts try to call that function first and, if they don't get the required response back, end (the precipitation script) before doing anything else?

and a related question. will players in network games with different plugins on or off be able to join a game together, and if so will they get the host's plugin foisted on them all, or will they just go OOS if the plugins do the wrong thing?
User avatar

Pfhorrest
California

Post Apr 23rd '19, 23:02

Wrk wrote:I know I've told Eternal devs exactly how to do this before, but it requires AlephOne 1.3. I can't remember if you were there for those discussions or not, but I never really heard a reason not to just go with that option. Requiring a plugin to turn on the precipitation seems like an obvious solution to me.

I probably wasn’t there, as I don’t remember those discussions, though I would also caution others not to rely too heavily on my memory as definitive evidence. If it doesn’t function in Aleph One 1.2.1, though, that might be one reason the others decided not to utilise it, as a lot of people playing the game may not want to run a beta version of Aleph One. On the other hand, it’s not as though the solution we went with is much/any more practical. ¯\(°_o)/¯

eta: Pfhorrest ninja posted while I was writing this, and I haven’t thought of a coherent potential fix to the network issue yet, though I assume the lag may be a result of a large number of sprite objects, so maybe there’s some way to avoid rendering some specific sprites on specific players’ screens depending on their settings, but it does sound like a pain in the arse to program in. Maybe the best solution is to just make the script check if everyone has the plugin on, and if anyone has it disabled, the precipitation script won’t run?
Last edited by The Man on Apr 23rd '19, 23:05, edited 1 time in total.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 23:05

The plugin sets some variable in the shared state saying "hey, i'm active". It'd be like 3 lines of code or something.

Then the embedded lua checks for this variable to see whether or not to enable precipitation. If it's not active, you'll have to check for previously created precipitation scenery (in the case of a reloaded saved game), and delete it. You could keep track of whether precipitation has already been created by storing it in Level._precipitation_exists or something like that. If it's set and the plugin isn't active, delete the precipitation, if it's not set and the plugin is active, create the precipitation. Otherwise just move the scenery around if the plugin is enabled.

Edit: This conversation happened after you guys released the latest Eternal release. Presumably 1.3 will be out by the time you guys put out another version, so there's no reason to worry about that.
User avatar

Wrkncacnter

Post Apr 23rd '19, 23:07

Was there a fix to the issue with deleting precipitation, then? I can’t remember how that discussion turned out (see post immediately above about my memory issues).

And yeah, hopefully our 1.3 coincides with or comes after Aleph One 1.3. I’ve commented before that I’d find it greatly poetic if they both came out on the same day (though this seems unlikely).
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 23:13

Yes, shared lua state is a thing in 1.3, as well as the fix to deleting scenery with lua. Both of those fixes make this possible.

For multiplayer, I'd just say get rid of the precipitation. Multiplayer has enough problems as it is. For the 2 of you that actually play Eternal multiplayer, you can make a special build that does whatever you want.
User avatar

Wrkncacnter

Post Apr 23rd '19, 23:28

That was the next suggestion I was thinking of making, LOL. We’ve got enough headaches as is. It shouldn’t be that difficult to write a subroutine for the gathering computer to check other players’ settings, though – or would it be? I don’t know. Anyway, my #1 preference is to make it dependent upon whether anyone has it disabled, and if they do, disable it; #2 is to have it dependent upon whether the host has it disabled (if it lags anyone’s machine, they can always mention it and then the gatherer can restart with the plugin disabled); #3 is to just disable it for net games entirely.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

Post Apr 23rd '19, 23:35

You can't tell what plugins/settings other players have. So #1 and #2 won't work. If the number of players in the game is > 1, disable it across the board IMO.
User avatar

Wrkncacnter

Post Apr 24th '19, 00:06

That’s weird. There’s also no way to pass information from one player to another? That seems like a fairly basic thing that could be worth implementing. How does the media fog script alteration you and Lia wrote work if there’s no way to pass information between players? I haven’t actually looked at it, so I might be misunderstanding the difference. I’m thinking in Triggers.init():

Code: Select all
gameticks = 0
userain = 1


then in Triggers.idle() (note that this is not actual Lua):

Code: Select all
if setting = false then userain = 0


and then after a certain number of ticks elapsed it decides whether to use rain or not based upon that. (It wouldn’t start executing the precipitation script until that number of ticks elapses.) Would look weird when it sets in but whatever.
Last edited by The Man on Apr 24th '19, 00:10, edited 1 time in total.
“People should not be afraid of their governments. Governments should be afraid of their people.” —V, V for Vendetta (Alan Moore)

“The trouble is that we have a bad habit, encouraged by pedants and sophisticates, of considering happiness as something rather stupid. Only pain is intellectual, only evil interesting. This is the treason of the artist: a refusal to admit the banality of evil and the terrible boredom of pain. If you can’t lick ’em, join ’em. If it hurts, repeat it. But to praise despair is to condemn delight, to embrace violence is to lose hold of everything else. We have almost lost hold; we can no longer describe happy man, nor make any celebration of joy.” —Ursula K. Le Guin, “The Ones Who Walk Away from Omelas”

“If others had not been foolish, we should be so.” —William Blake, The Marriage of Heaven and Hell

Last.fm · Marathon Chronicles · Marathon Eternal 1.2 · Where Monsters Are in Dreams · YouTube Vidmaster’s Challenge
User avatar

The Man
Sarasota, FL

PreviousNext

Return to Aleph One Discussion



Who is online

Users browsing this forum: No registered users