Feb 28, 2013, 12:30 PM | |
Oh, awesome. I think the pepper spray thing might be a mistake that I introduced?, but otherwise, that's great to know.
|
Feb 28, 2013, 01:01 PM | |
Oh, it looks like that's true. Objects treat pepper spray as a normal bullet in vanilla JJ2 but apparently not in the latest Plus release.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Mar 8, 2013, 01:36 AM | |
Great job. I look forward to seeing what the community is going to do with these new additions.
__________________
<a href="http://www.jazz2online.com/J2Ov2/downloads/info.php?levelID=5301">Episode 1 The War begins</a> Epsiode 2:N/A Episode 3: Probably never Episode 4: Probably never <a href="http://www.jazz2online.com/J2Ov2/downloads/info.php?levelID=4882"> Deckstar V3</a> <a href="http://www.jazz2online.com/J2Ov2/downloads/info.php?levelID=5408">Colonial Fix</a> Jazz 1 Fanolint: 98% <a href="http://www.jazz2online.com/J2Ov2/downloads/info.php?levelID=5407">Finished secret levels</a> |
Mar 8, 2013, 05:50 AM | |
It's annoying that division by 0 causes an error even in case of floats. I found a workaround for declaring infinity (
const float INFINITY=1.0e+39; ), but, besides the fact it looks ugly, there are cases when division by 0 is more appropriate or shortens code, and I still didn't find a way to declare a NaN if I can't use 0.0/0.0 .I don't know if it can be fixed but I would be thankful if it were taken care of.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Mar 8, 2013, 06:42 AM | |
...when would you ever want to divide by zero? What should the result of such a division be? Even if the result of a division by zero was infinity (it isn't), how would you use the concept of "infinity" in a scripting context?
|
Mar 8, 2013, 07:04 AM | |
Oh, I do realize it isn't in math, but C++, which I believe AS is based on, does return infinity on division by 0. Floats can also keep positive and negative zero and the sign of infinity depends on the sign of zero (which is basically the only difference between +0 and -0). Usually, infinity is declared as
1.0/0.0 , minus infinity as -1.0/0.0 and NaN as 0.0/0.0 . Division by ±infinity returns ±0 (and this part actually works correctly in AS). There are various forms of use for infinity and NaN. Or so I assume, because if there weren't, floats wouldn't be able to store them, right? Personally, I'm using them for min(), max(), mean() and median(), each of which is meant to have 2 or more arguments, and declaring them as double min(double x1,double x2,double x3=INFINITY,double x4=INFINITY,...) or double mean(double x1,double x2,double x3=NaN,double x4=NaN,...) was the best idea I was able to come up with.Also, infinity, minus infinity and NaN work just fine in comparisons.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. Last edited by Sir Ementaler; Mar 8, 2013 at 07:21 AM. |
Mar 8, 2013, 10:03 AM | |||
Quote:
Quote:
Code:
double minGeneric(array< double > numbers) // Weird spacing because JCF insists on parsing HTML even within code tags [ algorithm goes here ] double min(double x1, double x2) { return minGeneric({x1, x2}); } double min(double x1, double x2, double x3) ... double min(double x1, double x2, double x3, double x4) ... |
Mar 8, 2013, 10:35 AM | |
Oh I know about that, I had considered this option too, but, to be honest, I dislike it. It just doesn't look good and adds many additional lines. I really feel default arguments are aesthetically better in this case. And they work too, at least in case of min(), max() and median(), because mean() won't work so well with infinity and I didn't find a way to get NaN yet. Edit: Oh wait, I can get it by multiplying 0 by infinity. Cool.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Mar 8, 2013, 10:44 AM | |
These are things to take up with AngelCode, not with us.
|
Mar 8, 2013, 11:00 AM | |
Ow, that's what I was worried about. And even worse, I just found out AS returns true in
NaN==0 comparison, so it's more or less useless (you might think this means it's actually 0 rather than NaN, but then I doubt formatFloat() would return "-1.#IND"). While whether division by 0 is useful or not is arguable, NaN being equal to 0 is certainly something that should get fixed, since it's a value that's supposed to return false even in NaN==NaN . I'll try to get in touch with whoever is in charge of AS.
__________________
I am an official JJ2+ programmer and this has been an official JJ2+ statement. |
Mar 8, 2013, 12:11 PM | |
Isn't it easier to write a min() function that takes an array as its argument? Then you could just do this (untested code, have never worked with AS arrays myself):
Code:
double min(array<double> &arr){ arr.sortAsc(); return arr[0]; }
__________________
|
Mar 9, 2013, 12:08 AM | |
Go here and post a topic. In my experience, Andreas is relatively quick to respond (taking into account timezone differences) and quite understanding.
I notice that AngelScipt got another release on Tuesday. We should probably remember to incorporate that, if for no other reason than those sexy binary literals. |
Mar 17, 2013, 11:08 PM | |
It actually can't. There's no room in the bitfield for any more parameters.
|
Mar 19, 2013, 10:50 AM | |
Although there is no other option in this case, we should not forget that not everyone has the programming knowledge to use AngelScript.
Therefore, I would also like to point out that the non-scripting folks out there should not hesitate to do feature requests like this ![]()
__________________
|
Mar 21, 2013, 02:39 PM | |
What I wanted to accomplish is the player seeing what appears to be the edge of the level lower down, but 20 tiles or so higher not being able to see the edge of the level.
Something like this: ![]() The problem is if the player moves to the left fast enough after activating the LimitXScroll they can see the level scrolling. |
Mar 23, 2013, 07:51 AM | |
A few more things i'd like to see in the new plus (angelscript):
1. A function or property to see if a player has died for ALL players. For example a function onPlayerDeath(int playerID) or a property jjPlayers[pID].isDead (which could be true for a small time or untill the player has spawn). 2. Being able to change the jjPlayers[pID].flag variable. 3. A property jjPlayers[pID].name that shows the name of the player as string. 4. An option for the server to execute a plus command but without the line showing up in the chat (now you can use jjChat("/something") but it gives spam) Most of it you have probably already thought of but if you didn't, here you go ![]()
__________________
[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... |
Apr 7, 2013, 03:03 PM | |
The behavior described in this post, aside from the first bullet point, is pretty clearly a bug. In fact it's very easy to fix, to the point that you can fix it yourself by changing byte 0x4C543C (in 1.23) to 01 instead of 00. The question: is this a useful bug that should be left in, or is it just too silly and arbitrary to live? Your opinions, please.
|
Apr 8, 2013, 05:32 AM | |
Unless there are some popular levels using this bug, that can't be fixed by a simple AngelScript file, I'd say: fix the bug. Most of its behaviour is silly IMO.
__________________
|
Apr 17, 2013, 11:54 AM | |
Hi guys! I have a problem with the Plus. I enable the Always Run mode only just me run always (I play with keyboard) my brother (he play with joystick) isn't run always if only he press the Run button.
__________________
"Where I walk, I walk alone. Where I fight, I fight alone" Akuma from Street Fighter Alpha The Animation |
Apr 17, 2013, 01:03 PM | |
Ooh, joysticks. Thanks, will look into it.
|
Apr 19, 2013, 09:50 AM | |
I had trouble running this version of JJ2 under Wine 1.5 on Ubuntu 12.04.
Sometimes this happen: ![]() ofc I have "Hardware Acceleration" and "MMX Capabilities" disabled on JJ2. Wine debugger shows this when Access Violation happen: Code:
err:seh:setup_exception_record stack overflow 1296 bytes in thread 0009 eip 7ea124c4 esp 00230e20 stack 0x230000-0x231000-0x330000 wine: Unhandled page fault on read access to 0x00000000 at address 0x4a0a62 (thread 0037), starting debugger... Last edited by FihuFiL; Apr 19, 2013 at 10:03 AM. |
Apr 19, 2013, 10:15 AM | |
Hmm. I'm about 95% sure you're running TSF there, because that error would make no sense for 1.23. For TSF, it means something's going wrong while initializing the galaxy sound system. Can you comment any more on under what circumstances this happens? Are you opening JJ2, or playing specific music files, or what?
|
Apr 19, 2013, 11:02 AM | |
I just set up a simple minimized server(gamemode: pest) with default 3 battle levels. And it happen while cycling on random lvls. (I tested it when window is not minimized it happen too while level cycling)
Like: "Press fire to continue" >Hitting space "Access violation" EDIT: Yes I'm running 1.24 for sure. |
Apr 19, 2013, 03:11 PM | |
Does any given level either crash JJ2 or not crash JJ2, every time you try cycling to that specific level? Or does it seem random?
|
Apr 19, 2013, 03:47 PM | |
During the bash (the only occasion on which I have played JJ2+ in quite a while) I would randomly crash during level cycling as well, and I think several other people in the server had the same problem. I don't think it was a level-specific thing.
It was an Access Violation crash, though sadly I forgot to make a screenshot of the exact error. I was using 1.23. |
Apr 19, 2013, 10:10 PM | |
I get that crash on virtually every level cycle (as well as often when joining a server or exiting to the menu) but always assumed it was just a Wine problem. It doesn't always appear as an access violation (sometimes it does, sometimes everything just closes, sometimes the screen freezes black, and I never get useful console output).
|
Apr 19, 2013, 10:47 PM | ||
Quote:
|
Apr 19, 2013, 11:07 PM | |
When I host levels in 1.23 and cycle it also crashes sometimes. I don't remember if it haphened before the new plus but since i've been working on a new level lately i noticed it more. It usually haphens more when i hit the space bar quicker to skip to the next level. It's probably the same stack overflow as violet got but still if you want i can post the error.
__________________
[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... |
Apr 19, 2013, 11:14 PM | |
I think better the Windows for 1.24 than the Linux because on my computer doesn't start JJ2:TSF with a Access Violation error crashed and throw back to the Linux.
__________________
"Where I walk, I walk alone. Where I fight, I fight alone" Akuma from Street Fighter Alpha The Animation |
Apr 19, 2013, 11:31 PM | |
burnout, can you share that access violation? I know they look opaque to the point that they once got JJ2 included on a list of awful error messages, but they can be kind of useful to us from time to time.
|
Apr 19, 2013, 11:59 PM | |
Sorry I don't share for you the Access Violation message but I will try later and if I got a Access Violation message then I can share for. But I think similar the Access Violation that I got.
__________________
"Where I walk, I walk alone. Where I fight, I fight alone" Akuma from Street Fighter Alpha The Animation |
![]() |
«
Previous Thread
|
Next Thread
»
Thread Tools | |
|
|
All times are GMT -8. The time now is 04:43 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.