Feb 7, 2013, 03:30 AM | ||
Quote:
__________________
|
![]() |
Seren |
This message has been deleted by Sir Ementaler.
Reason: Actually, forget it, it's your JJ2+, as long as backwards compatibility doesn't get removed do whatever you like.
|
Feb 7, 2013, 07:51 AM | ||
Quote:
![]()
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Feb 7, 2013, 08:15 AM | ||
Quote:
And yeah, it's not game-breaking, not like palettes ever affect gameplay to my knowledge :P |
Feb 7, 2013, 09:37 AM | |
Yea, I've seen it doing that too. It just disappears into nowhere.
__________________
|
Feb 8, 2013, 04:12 AM | |
^ there's a bug, like in GMR v4.0. If you jump on spring, and press type /ready while you are in the air, you will jump above the base. If you're in a sucker tube and type /ready, you will move from the base, like it's one tile sucker tube.
There's still one bug, like in previous versions. Not sure if it's possible to fix, and how, but do your best! If you put warp target above the vine, this will happen: ![]() |
Feb 8, 2013, 04:06 PM | |
Both easy enough to fix, although I've always been attached to the second one, so I don't really want to...
|
Feb 11, 2013, 01:30 AM | |
Add OBJECT::ENEMYBULLET=20.
Turns out it's used by all sorts of hazardous projectiles spawned by SP enemies. Dragons' breathe, Monkeys' bananas, Witch's spell, Devan's gun bullets, Devil Devan's fireball, etc.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Feb 11, 2013, 01:36 AM | ||
Quote:
__________________
Mystic Legends http://www.mysticlegends.org/ The Price of Admission - Hoarfrost Hollow - Sacrosanct - other - stuff |
Feb 13, 2013, 04:31 AM | ||
Quote:
I assume the "behavior function" Violet mentioned refers to a function pointer inside the object structure that is called every tick. If that is the case, wouldn't it be sufficient to find all suitable functions from the various object types that use it and assign an enumerator to each of them? Then, just give the AS API a property of that enum with setter/getter functions that automatically convert from enum values to function pointers and back. Last edited by GLaDOS; Feb 13, 2013 at 04:42 AM. |
Feb 13, 2013, 04:48 AM | ||
Quote:
But hey, that's not all! Object 20 is also used by the shock wave created by RF missiles. That'll cause trouble with naming it properly.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Feb 13, 2013, 12:08 PM | ||
Quote:
Out of curiosity -- what would people like to know about what we're doing? There was a while where we were posting teaser pictures on J2O, until people started complaining there were too many of them and other stuff like that. Now we're mostly silent except for occasional reassurances like "we know about this" or "we'll think of something." Are either of those options preferable? (With pictures presumably not on the J2O front page anymore.) Or full on development blogs? Keep in mind that I'm not saying we'll necessarily do what the majority support, but it would be nice to have some sense of where people stand on this issue. |
Feb 13, 2013, 12:39 PM | |
So, I've been running into another problem... I need to set a bunch of tiles (the same pattern several times across the level, but independently controlled) in a foreground layer, but the "tile cache" is getting in the way. Is it technically possible to add the option to allocate additional tile cache entries that jjTileSet() will then use?
Perhaps adding a function like jjAddTileCacheEntry(uint8 layer, int xWord, int y) would be the most convenient way to do it. It would copy the cache entry into a newly allocated one and change the cache reference of the tile to the new entry. That is, if it is possible to increase the tile cache's size, either dynamically whenever the function is called, or, if that is not possible, by a predefined maximum number when loading the level. EDIT in response to Violet: A development blog with relatively condensed info about upcoming features would be nice (along with maybe a bug tracker and some place for suggesting stuff ![]() Last edited by GLaDOS; Feb 13, 2013 at 01:22 PM. Reason: forgot to add a function parameter |
Feb 13, 2013, 12:58 PM | |
This of JJ2 PLUS with AngelScript is a great occasion for unfinished episodes like "Jazz Unleashed", "Tomb Rabbit 2" and "Dreamscape" to REALLY amaze us when finished!
|
Feb 13, 2013, 01:28 PM | |
Well, Dreamscape might.
__________________
Mystic Legends http://www.mysticlegends.org/ The Price of Admission - Hoarfrost Hollow - Sacrosanct - other - stuff |
Feb 14, 2013, 06:09 AM | |
The xOrg/yOrg variables seem to reset themselves to the usual start pos event on death. If you meant that I might have set the spawn point to the same position as the Start Pos event, that is not the case.
On an unrelated note, is the dev team considering adding access to the player input bitfield? (PlayerStruct + 0x584 if I recall correctly, at least for TSF) It's one of these things that would allow for some very interesting gimmicks in scripted levels. (on an even less related note, perhaps I should move my suggestion/implementation spam into a dedicated thread to make more space for bug reports/help requests/compliments in this thread, I have many more to make and I would really like to contribute to JJ2+'s script API) |
Feb 14, 2013, 10:47 AM | ||||
Quote:
Quote:
Quote:
|
Feb 14, 2013, 12:18 PM | |||
Quote:
Quote:
Okay then. It just sometimes felt like a few posts were left unread because all different kinds of posts are mixed into one thread, with different discussions going on at once. ------ Unrelated edit: Is there any reason why the invincibility variable of jjPLAYER objects other than the local players cannot be read? It would be pretty useful to at least have read access to the blinktime of other players. Last edited by GLaDOS; Feb 15, 2013 at 12:04 PM. |
Feb 16, 2013, 09:38 PM | ||
Quote:
1) Invincibility and blinktime are separate properties, the one of which is exposed to AngelScript and the other of which is not. 2) Player objects have far, far more properties than you see in AngelScript, not all of which are of much use; the current collection was chosen somewhat haphazardly, and we're figuring out which ones shouldn't have been left out as we go along. |
Feb 17, 2013, 02:06 AM | ||||
Quote:
Quote:
Edit: Quote:
Receiving random unbased hate from members who stay anonymous is easily one of the most demotivating things about posting on JCF; this is a case of complete anonymity just making things much worse. Edit 2: Above rant on reputation is now invalid; reputation system has since been improved. Doesn't make the person who gave it to me less of an idiot though. Last edited by GLaDOS; May 5, 2013 at 02:32 PM. |
Feb 20, 2013, 11:28 AM | |
I've looked to the apple's objType property and i found some usefull stuff some of you might want to know and some of you might already know:
objType value: Behaviour 0: Hurt + Blocks Bullets 1: Hurt + Destroy 2: Hurt + Destroy 3: Untakable 4: Untakable (Goes here when eaten) 5: Eatable (Normal State) 6: Not able to change to this state 7: Untakable 8: Blocks bullets 9 - 14: Untakable Untakable: The player can't take this and doesn't interact with it. Hurt: The player get's hurt by the apple. Blocks Bullets: Bullets are destroyed by the apple (all hail the mighty apple). Destroy: Object gets destroyed when a player touches it. Also, the apple can still be shot down with tnt (unless its in a masked tile) but not with normal blaster bullets (unless objType is 5). I don't know if these changes in objType work with other objects (it probably will with other fruits). The use of this is to let the apple be a dummy object where you can change behaviour of it: i.e. make a throwable bomb that doesn't hurt the player when touched.
__________________
[13:07:13] *** Foly is on a KILLING SPREE! [13:07:14] *** you killed yourself [13:07:14] *** Foly was looking good but died instead... |
Feb 20, 2013, 12:01 PM | ||
This does explain some of this stuff blur wrote:
Code:
typedef enum oooTYPES { oNORMAL, oPLAYERBULLET, oENEMYBULLET, oPARTICLE, oEXPLOSION, oPICKUP, oWAITPICKUP, oHURT, oSPECIAL, oDYING, oSPECIALDONE, oSELFCOLLISION, oTYPES=15, oENEMY=16, oTRIGGERTNT=32, oALWAYSACTIVE=64 } oooTYPES; Quote:
Code:
oNORMAL+oTRIGGERTNT+oENEMY
__________________
Mystic Legends http://www.mysticlegends.org/ The Price of Admission - Hoarfrost Hollow - Sacrosanct - other - stuff Last edited by cooba; Feb 20, 2013 at 12:17 PM. |
Feb 20, 2013, 12:13 PM | |
I know one of them -- possibly oSELFCOLLISION -- is what's used by turtle shells to determine whether an object should be bounced off of or not. oSPECIAL is a tricky one that means that the object has potentially unique behavior in response to a) being hit by a bullet or b) being collided with a player, behavior which must be defined separately for each oSPECIAL object. oTRIGGERTNT does what it sounds like; oALWAYSACTIVE means the object isn't deactivated when it's more than ~30 tiles away from the player in single player. oPARTICLE, oWAITPICKUP, oHURT, oDYING, and oSPECIALDONE I know less about.
Meanwhile, I know nothing at all about "doesHurt," and have only a limited understanding of "noHit." |
Feb 20, 2013, 07:32 PM | |
Code:
for (uint8 i = 1; i < 255; ++i) if (jjObjectPresets[i].objType & 64 == 64) jjPrint(formatInt(i, "1")); |
Feb 20, 2013, 11:54 PM | |
Also, Bees, for no reason at all.
__________________
Mystic Legends http://www.mysticlegends.org/ The Price of Admission - Hoarfrost Hollow - Sacrosanct - other - stuff |
Feb 23, 2013, 09:41 AM | |
Too many objects, yea.
|
Feb 25, 2013, 09:10 PM | |
Going to go ahead and ask this here.
Could users be given access to at least some BASS functions? Not sure which ones are too big a security risk, but I'm particularly interested in BASS_ChannelSetPosition, BASS_ChannelSetAttribute, and BASS_SetConfig (only to set buffer length). I ask because I'd like to have levels with "dynamic" sound or music. For example, smoothly switching to different music when overtime starts, or Sudden Death in the EGFP update (I SWEAR I AM DOING THIS). Or, for an example that almost anyone can do, playing ambient noise depending on the player's location in a level - splashing waves that get louder as they get closer to the water, sparking noises near those electric...things in Tubelectric, etc. The Ambient Sound event can only handle so much. Of course if it's too dangerous or not cool enough or BASS was incorporated into JJ2+ in a way that makes this non-trivial to add, I totally get that, no sweat (you're sure you still want to allow feature requests in this thread? =P) |
Feb 25, 2013, 09:32 PM | |||||
Complexity far outweighs utility, sorry. Reverse gravity is essentially finding a lot of values to change the signs of; sideways gravity takes a lot more thought and I don't see anyone ever using it.
Quote:
Quote:
Quote:
Quote:
|
Feb 25, 2013, 11:27 PM | |
I did think this would be a pretty handy option to have, since I rarely mute only music/sound but not the other, and -nosound is impossible to turn off in-game.
__________________
Mystic Legends http://www.mysticlegends.org/ The Price of Admission - Hoarfrost Hollow - Sacrosanct - other - stuff |
Feb 25, 2013, 11:28 PM | ||
Quote:
Of course, support for user-provided sound effects may not actually be desirable at all. |
Feb 26, 2013, 05:23 AM | |
minmay, once I finish my current workings (to the Plus dev team known as the "hellfunction"), I will look into BASS. I've scrolled through its API already some week ago. Doesn't look all that difficult.
__________________
|
Feb 28, 2013, 11:33 AM | |
Info about noHit:
It appears to be a property used only by objects whose objType&oTYPES==oNORMAL (so in numbers, objType&15==0). It handles those objects' interactions with players' bullets. The way it works reminds objType. 0=on collision with a bullet decrease own energy and destroy the bullet unless it's fireball 1=ignore all bullets 2=destroy bullets except for pepper spray 3=destroy bullets except for pepper spray and fireball (it can also execute special actions if they're defined for the object) +4=cause ricochet +8=treat freezer bullets as regular bullets (if off, the object will always get frozen by freezer bullets) +16=don't get pushed back by TNT That's all there is to it, no object uses values higher than 31 and it doesn't seem they would cause any different effects.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. Last edited by Sir Ementaler; Dec 10, 2016 at 12:05 AM. |
![]() |
«
Previous Thread
|
Next Thread
»
Thread Tools | |
|
|
All times are GMT -8. The time now is 05:07 PM.
Jazz2Online © 1999-INFINITY (Site Credits). Jazz Jackrabbit, Jazz Jackrabbit 2, Jazz Jackrabbit Advance and all related trademarks and media are ™ and © Epic Games. Lori Jackrabbit is © Dean Dodrill. J2O development powered by Loops of Fury and Chemical Beats. Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Original site design by Ovi Demetrian. DrJones is the puppet master. Eat your lima beans, Johnny.