Graal Forums

Graal Forums (https://forums.graalonline.com/forums/index.php)
-   Graal V4 Main Forum (https://forums.graalonline.com/forums/forumdisplay.php?f=143)
-   -   Graal v4.04 released (https://forums.graalonline.com/forums/showthread.php?t=64166)

Admins 02-17-2006 07:15 PM

Graal v4.04 released
 
A new (major) release of Graal v4 has been uploaded, get it by connecting to the server list. The Mac version will follow in a few minutes.
This new version fixes a lot of problems with particle effects, those are needed for the new spells on Graal Kingdoms. There are also several new functions for sounds and for the new scripting engine in general.
In the options window on Windows you will find new options for light effects and similar, they are not the same like in v2 though - scripters must decide if they show the effects, by disabling those things in the options you are just specifying that you don't want to see those effects, it is not actually disabling them.

PS: v2 will finally be disabled in a few days

Crash fixes:
- fixed a problem with crashing when someone is
connecting from another server and having a statusicon which
is not existing on the current server
- fixed division by zero error when a tiled GuiBitmapCtrl has no image
or the image has not been loaded yet
- gani scripts cannot call destroy() on npcs anymore

Other fixes:
- it is displaying an error now when the connection to the
Graal 3D server timed out
- it is using the particle size for clipping the particles
(which fixes problems with huge particles)
- particles are displayed even if the object is moving out of
screen - this currently only works for moving npcs (e.g. spell missiles)
- the 'continueaftedestroy' flag for particle emitters is also
working on gmaps now
- the showimg attachoffset variable is working correctly now
- gani-ROTATEEFFECT is fixed on gmaps
- weapon timeouts are executed before gani timeouts so that
things like custom chat text display work better
- terrain levels are not having gaps anymore
- disabling UDP also disables microphone support
- the font tempus sans itc is automatically installed
- fixed the "&" character in urls retrieved with requestURL,
it is also sending the host and client for better compatibility
with web servers, also requestURL is working on Linux now
- the script event "actionclientside" is cached now in case
the destination weapon is not loaded yet
- findplayer(accountname) is returning the client if both client and RC
are online
- Graal3D textures take less memory in the video RAM now
- the game is not freezing when a mp3 or radio stream is starting

New/Improved:
- script variables npc.isblocking, level.width, level.height,
npc.npcsindex, player.playersindex, defaultfontname
- npc.isblockingprojectiles flag for letting blocking npcs
pass particles (not working for non-blocking npcs yet,
which never block projectiles)
- new script function findnpcbyid(id)
- signs can be scrolled via mouse click
- optimized levels/maps with many npcs
- new options: lighteffectsenabled, weathereffectsenabled,
particleeffectsenabled - those options don't change
the engine itself though, they are only a help for scripters
so they can enable/disable effects if possible;
those variables are also accesible by the old scripting engine
- script functions getMusicTags() (returns array) and getMusicStatus()
(returns string) for knowing more about the currently
played music
- script event onMusicDataReceived(dataname,datavalue) for
getting the title and artist of an internet stream (the stream server
is sending this all few seconds)
- playlooped2(soundfile,x,y,volume)

Sound examples:

PHP Code:

//#CLIENTSIDE
function onCreated() {
  
// Retrieve the playlist via http
  
this.req requestURL("http://www.shoutcast.com/sbin/shoutcast-playlist.pls?rn=3281&file=filename.pls");
  
catchevent(this.req,"onReceiveData","onData");
}

function 
onData(obj) {
  
// Got the playlist data: 
  // parse the returned data for a line like "File1=http://streamlocation"
  
for (lineobj.data) {
    if (
line.starts("File1=")) {
      
// Play the real url
      
play(line.substring(6));
      
// Also start a timer to display the music info
      
setTimer(0.1);
      break;
    }
  }
  
this.req NULL;
}

function 
onTimeout() {
  
// Display the music data
  
if (getMusicStatus()!="")
    echo(
"music status: " getMusicStatus());
  if (
getMusicStatus()=="ok")
    echo(
"music info: " getMusicTags());
  else
    
setTimer(0.1);
}

function 
onMusicDataReceived(dataname,datavalue) {
  
// Music meta data is sent by the stream server
  // all few seconds, dataname is either ARTIST or TITLE
  
echo("music data: " dataname " - " datavalue);


Update:
Released 4.04 revision 1, which fixes the problem with actionclientside in old scripting engine.

Added scripting functions:
- getimgpixel(imagefile,x,y) - returns an array of {red,green,blue}
- isimgpixeltransparent(imagefile,x,y)
- isimgrectangletransparent(imagefile,x,y,width,heig ht)

Update:
Forgot to mention that v4.04 also fixes the message bug on Graal Kingdoms

ApothiX 02-17-2006 07:19 PM

Stefan: A bug with the new version that I didn't have a chance to talk to you about: When you connect to a Graal3D Server, then connect to another server (I went from Graal3D to Kingdoms) the files all redownload and some emoticons don't work. To fix it you have to delete the FILENAMECACHE.txt file.

Admins 02-17-2006 07:29 PM

That is not related to the new version, please repost as a new thread.

Skyld 02-17-2006 08:16 PM

Nice updates, but I have noticed a problem with the scrolling through say2 windows.

Say you have another window selected, and you have a sign on-screen. If you focus on Graal, the sign is scrolled and it can't be read! Could you make it only scroll when the window already has focus?

Chris 02-17-2006 08:20 PM

Quote:

Originally Posted by Stefan
PS: v2 will finally be disabled in a few days

<3

jake13jake 02-17-2006 08:29 PM

Stefan, in regards to implementing the new movement and damage on Classic that is now possible, it's going to be difficult if the NPCs joined to classes on the gmap won't update or clear.

Warcaptain 02-17-2006 09:40 PM

playlooped2!!! yay.. thats one of the fastest turnaround time for new things ive seen.. considering i suggested this LAST night on RC lol

Admins 02-18-2006 12:08 AM

Quote:

Originally Posted by jake13jake
Stefan, in regards to implementing the new movement and damage on Classic that is now possible, it's going to be difficult if the NPCs joined to classes on the gmap won't update or clear.

Eventually open a thread for that on the bugs forum, like I said it never happened to me (in 5 years) so I will need more information, where it happens, when etc.

Shotoo2 02-18-2006 12:24 AM

Quote:

Originally Posted by Chris
<3

Do you even realize how many threads are going to be started by noobies on Era who haven't made the switch? x_x

ZeLpH_MyStiK 02-18-2006 02:48 AM

It seems that a bug came alone with this new v4 release that has somewhat cripled Maloria. Using a test script as the one shown below, it can be shown that actionclientside was not called at all.
PHP Code:

if (actionserverside) {
  
setplayerprop #c,test server called!;
  
triggeraction 0,0,clientside,*Test,;
  
setplayerprop #c,test server called 1!;
}
//#CLIENTSIDE
if (created) {
  
setplayerprop #c,test;
  
triggeraction 0,0,serverside,*Test,;
  
setplayerprop #c,test1;
}
if (
actionclientside) {
  
setplayerprop #c,clientside called!;


After running this script, the player's chat text was left at "test server called 1!".

Edit:
This script was run on both Maloria and N-Pulse (both non-gs2-enabled servers) and failed to arrive at "clientside called!". However, when it was run on #gscript (a gs2-enabled server) it did arrive at "clientside called!".

Maloria and N-Pulse: WEAPONNPC *Test
#gscript: WEAPONNPC Zelph_MaloriaProblem2

jake13jake 02-18-2006 04:15 AM

hmm... do triggerclient and triggerserver work?

ZeLpH_MyStiK 02-18-2006 04:29 AM

Quote:

Originally Posted by jake13jake
hmm... do triggerclient and triggerserver work?

I just said the bug was for gs1 servers. =\
And if you're so curious, why not try it yourself?

Warcaptain 02-18-2006 05:34 AM

Quote:

Originally Posted by Shotoo2
Do you even realize how many threads are going to be started by noobies on Era who haven't made the switch? x_x


forget about Era.. think about the noobs on UN!

protagonist 02-18-2006 06:16 AM

Maybe there is a way to have people who try to log on with v2 to have it say "Your Graal version is out of date! Please update to version 4 from the website!" or something.

jake13jake 02-18-2006 07:09 AM

Quote:

Originally Posted by ZeLpH_MyStiK
I just said the bug was for gs1 servers. =\
And if you're so curious, why not try it yourself?

they don't like working for me very much every time I try.

Riot 02-18-2006 07:11 AM

Quote:

Originally Posted by ZeLpH_MyStiK
It seems that a bug came alone with this new v4 release that has somewhat cripled Maloria. Using a test script as the one shown below, it can be shown that actionclientside was not called at all.
PHP Code:

if (actionserverside) {
  
setplayerprop #c,test server called!;
  
triggeraction 0,0,clientside,*Test,;
  
setplayerprop #c,test server called 1!;
}
//#CLIENTSIDE
if (created) {
  
setplayerprop #c,test;
  
triggeraction 0,0,serverside,*Test,;
  
setplayerprop #c,test1;
}
if (
actionclientside) {
  
setplayerprop #c,clientside called!;


After running this script, the player's chat text was left at "test server called 1!".

Edit:
This script was run on both Maloria and N-Pulse (both non-gs2-enabled servers) and failed to arrive at "clientside called!". However, when it was run on #gscript (a gs2-enabled server) it did arrive at "clientside called!".

Maloria and N-Pulse: WEAPONNPC *Test
#gscript: WEAPONNPC Zelph_MaloriaProblem2

Having the same problem with Delteria's Event System. Anyone on v4 cannot be warped because the actionclientside never triggers.

ZeLpH_MyStiK 02-18-2006 07:45 AM

Quote:

Originally Posted by jake13jake
they don't like working for me very much every time I try.

Then there's something wrong with your scripting cause the npcserver will do the same thing every time. So it's either it works or it doesn't, no waivering.
Quote:

Originally Posted by Riot
Having the same problem with Delteria's Event System. Anyone on v4 cannot be warped because the actionclientside never triggers.

Yeah, it seems to happen on the new v4 with all gs1 servers.

ApothiX 02-18-2006 09:46 AM

Quote:

Originally Posted by ZeLpH_MyStiK
Then there's something wrong with your scripting cause the npcserver will do the same thing every time. So it's either it works or it doesn't, no waivering.

Yeah, it seems to happen on the new v4 with all gs1 servers.

Does it have to do with having an asterisk as the beginning character in the name? Or have you tested that?

Warcaptain 02-18-2006 10:25 AM

Quote:

Originally Posted by protagonist
Maybe there is a way to have people who try to log on with v2 to have it say "Your Graal version is out of date! Please update to version 4 from the website!" or something.

it will do that when they try to log onto a pw. will say they have the wrong version.. just like it always has :)

Admins 02-18-2006 01:22 PM

Ok will check trigger client thing on Monday, sorry for the problems.

ZeLpH_MyStiK 02-18-2006 07:06 PM

Quote:

Originally Posted by ApothiX
Does it have to do with having an asterisk as the beginning character in the name? Or have you tested that?

It doesn't have anything to do with having asterisk/dash as the beginning character in the name. It's the same with all weapon npcs.

Admins 02-18-2006 08:36 PM

Fixed that problem, try now

Riot 02-18-2006 08:40 PM

Quote:

Originally Posted by Stefan
Fixed that problem, try now

It appears to be working now, thanks. :)

ApothiX 02-18-2006 09:45 PM

Quote:

Originally Posted by protagonist
Maybe there is a way to have people who try to log on with v2 to have it say "Your Graal version is out of date! Please update to version 4 from the website!" or something.

I believe it says that when v30enabled=false is set in the serveroptions.

ZeLpH_MyStiK 02-18-2006 10:44 PM

Quote:

Originally Posted by Stefan
Fixed that problem, try now

Same on Maloria and N-Pulse. Good job.

jake13jake 02-18-2006 11:18 PM

Quote:

Originally Posted by ZeLpH_MyStiK
Then there's something wrong with your scripting cause the npcserver will do the same thing every time. So it's either it works or it doesn't, no waivering.

Yeah, it seems to happen on the new v4 with all gs1 servers.

Yea, someone please document triggerclient() and triggerserver(). I would love them. I'm also happy that npc.trigger and triggeraction call both the serverside and clientside event. Makes everything so much easier.

Admins 02-18-2006 11:57 PM

player.triggerclient("weapon",eventandparams...)
triggerserver("weapon",eventandparams)
Instead of "weapon" you can also type "gui", the parameter "npc" is not supported yet (only on Graal 3D)

jake13jake 02-19-2006 01:41 AM

Quote:

Originally Posted by Stefan
player.triggerclient("weapon",eventandparams...)
triggerserver("weapon",eventandparams)
Instead of "weapon" you can also type "gui", the parameter "npc" is not supported yet (only on Graal 3D)

Oh, another strange thing... when I was first playing with trigger, I couldn't call a triggeraction type event. Would this be the same for triggerserver() and triggerclient()? By the way, these commands are VERY useful to have I must tell you.

ViCtOrEhEhEh 02-19-2006 10:22 PM

Quote:

Originally Posted by Warcaptain
forget about Era.. think about the noobs on UN!

AHHHHH!! *runs head into wall*

haunter 02-26-2006 06:51 PM

I can't download V4.04 In the update tab it says I have V4.03, and the current version is V4.04, but when I click 'upgrade' it says 'Files OK!'

Admins 02-27-2006 01:10 AM

You must have an older version of the Mac client, two versions ago we have made the announcement that the update thing was bugged on Mac and you need to download the new version via the website.

haunter 02-27-2006 02:00 AM

Quote:

Originally Posted by Stefan
You must have an older version of the Mac client, two versions ago we have made the announcement that the update thing was bugged on Mac and you need to download the new version via the website.

Oh, okay, sorry. I will try that right now.

Can I just replace the application, and the EXEreplacer?

Edit: I broke graal :( It wont open now.

edit2: fixed

Edit C: Stefan, this also fixes my problem with the draisine on Graal Bomy Lands


All times are GMT +2. The time now is 11:28 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.