Creation/Dev/Releases/Client/4.02

From Graal Bible

]]

Release date

October-December 2005 for VIP and Gold accounts.

Revisions

Revision 1

October 4th 2005

This is the first update for the Gold/VIP v4. Updates:

  • fixed the UDP mode, so it should work again, together with microphone chat
  • doesn't crash anymore when there are too many explosions
  • added the F1 help files
  • you can switch from 3D to 2D mode again, it's not recommended though because it uses much more resources in comparison to connecting directly to a 2D server (we will work on reducing the resources taken by the 3D version)
  • when disabling bitmap fonts then the text width is correctly calculated, which fixes right-aligned text
  • fixed a problem with the particle emitter where after some client lag (frozen window) new emitted particles were messed up
  • the sign window is displayed below the player if possible, instead of above
  • when being hurt, you are sliding through other players like in v2; also when being hurt with the horse you should not get stuck in beds anymore

Gserver/NPCServer updates:

  • displays correct error line if the script contains old script commands with multi-line parameters
  • update packages are reloaded when an RC uploads a new version, so "reinstall" doesn't messup after modifying a package anymore

Revision 2

October 10th 2005

Updates:

  • fixed showimg rotation angle (for era cars)
  • fixed text transparency - it was more transparent than images with the same transparency
  • fixed classic q menu, no more bugged items on the right edge
  • fixed updating of playerlist head icons
  • fixed transparency of heads on the minimap/map
  • added player.language and player.languagedomain (de, fr etc.) variables
  • added variable selectedlistplayers to access the list of the players who are selected on the playerlist
  • fixed a problem of crashing after deleting an weapon (destroy command), so the maloria laser wars event should not crash on leaving anymore
  • removed unneeded stuff from the options menu
  • fixed guicontrol.border=1 handling (drawing a border around the control, e.g. the hint window when moving the mouse over the minimap)

Revision 3

October 11th 2005

Updates:

  • fixed transparency problems on 32 bit mode
  • improved updating of head icons after downloading the gfx
  • fixed head icon problem when two players have the same head gfx
  • fixed some transparency problems of head icons on the minimap/map
  • fixed updating of the level name for players on the player list (tooltip/hint window)

Revision 5

October 21st 2005

Updates:

  • fixed transparency of icons for text list gui controls (e.g. the channel list)
  • added language-selection box in the options
  • fixed actionprojectile2 event (for bullet fx on Era)
  • fixed updating of character gfx after downloading them, so that they don't appear white (Graal 3D)
  • fixed display of the F1 help (Linux version)
  • added remembering the window size (Linux)
  • added F2 log window (Linux)
  • fixed crash on tiles drawing when the main tiles image is very small (Linux)

This is the first release of v4 for Mac. The major updates from v3.15 to v4.02 are the integrated updater, image transparency like in the Windows version, global player list, global chat system, particle engine.

Revision 6

October 29th 2005

Changes:

  • optimized multi line text control to "reflow" less often, so being faster when it has several thousands of lines
  • fixed some problems with ganis running when the player/npc is not visible anymore or actually in another level, producing annoying sound effects
  • the guest account doesn't appear in the account list anymore after trying the guest option
  • when you close the chat bar using <Tab> key then it is directly focusing the game again, instead of focussing in-game GUI windows
  • fixed a problem of the graal3d character being able to walk on water when swimming far away from the island (also reenabled the check for walking away from the starting town)
  • in the linux version it is now displaying a warning message when you start the game without a fast gfx driver (direct rendering not enabled)

Also the Linux RC has been updated (when you download via v4), and the RC2 test version for Windows as well, currently only available to selected staff. Changes:

  • font and colors more close to the old RC
  • only opens one weapons list and class list, not multiple windows
  • added a folder-delete button, only works if the folder is empty and the gserver has been restarted
  • the upload folder is remembered
  • file browser stays in the current folder when reopening it
  • new option "ignore mass PMs if client is online"
  • added tray icon, opening pm by double-clicking the tray icon, quit-menu when right-clicking the tray icon
  • added a refresh button in the serverlist, also you can refresh/close it using F8
  • uses a different configuration file now (control2config.txt) to not mess up or be messed up by the old RC configuration file
  • transparent button images (in case you want to make your own RC buttons)
  • can handle scripts larger than 28k; the limit is now around 100k, but with old scripting engine the client cannot handle more than 28k scripts so it is mainly meant for servers with new scripting engine

Things that still need to be done: new ban window (for banning guest accounts and using the central ban database), playerlist improvements, file browser drag & drop

Revision 8

November 3rd 2005

Changes:

  • fixed several problems with update packages from playerworlds overwriting the main update packages (.gupd files)
  • it is now possible to rearrange the graal control inside the window, so you can put controls next to it without hiding game content, check the attached level editor scropt (turnon() function, GraalControl is inside GUIContainer)
  • fixed problems of gani scripts of other players not restarted in certain situations
  • resetting the gani attributes of the player on server switch (#P / player.attr[])
  • on mac the downloaded files are stored in ~/.graal/graal4, like on Linux, so making it possible to play Graal when you only have read access to the files (you currently need write access to the exe for the automatic update though)
  • added functionality for clearing all npcs on npcserver restart (not enabled in the npcserver yet though)
  • fixed starting in fullscreen with different fullscreen resolution than 1024x768

Also the gserver/npcserver have been updated so that you can see the upgrade status of a player by script now: player.upgradestatus or

#G / #G(playerindex)

Both gserver and npcserver need to be restarted to enable that.

Revision 9

November 15th 2005

Updates:

  • supports png filter type 4 now (fixes some images)
  • when a gif image has no transparency, then black is taken as transparent color, to be more compatible to v2
  • updateboard has been fixed for gmaps to work for map parts close to you (not just the map part where you are standing on)
  • gmaps and gupd files are updated using the checksum of the file, and are cached in memory in case they cannot be written to file, so they should always work
  • the variable attr[] is protected in the new scripting engine to prevent crash (you can still modify array members, but not replace the array)
  • GuiFrameSetCtrl has been fixed
  • in new scripting engine serverr. vars are working now on clientside without adding a "player." in front of them
  • in the Windows version the F2 log window uses the Courier font now so that things like "/party list" on Era and Kingdoms are displayed fine
  • in the Linux version the default font mode has been changed so that the font is displayed correctly when you use transparent black text (changeimgmode 0 is the same like 1 now, like on Windows)
  • the graphics handling in the Linux version has been optimized so that it takes less resources (the same for Graal3D)

Revision 10

November 21st 2005

Updates:

  • fixed the problem with "Cannot open <file> for writing" and such on Linux/Mac/Graal3D, it was a problem with npcs using txt files or similar as image
  • optimized saving of tile definitions (addtiledef) to reduce the number of file operations
  • fixed the gmap-"double-warp" when entering a gmap from another level
  • added base64encode(string) and base64decode(string) functions
  • the guest mode is hidden now, until it will be officially opened

Revision 11

November 22nd 2005

A new version for Windows has been released which should fix problems with microphone chat and UDP (you need UDP for using it online, if you are behind a network firewall or NAT then you might need to configure that to be able to use UDP):

  • the options now correctly update the microphone options, and show the modifications, e.g. you see if the voice is working, you need to test that in offline mode or online mode though, not in the starting screen
  • voice chat activation via key (T) is working
  • you can select the input driver
  • the choosen voice codec is correctly saved
  • the display for the current volume is more accurate
  • the check for if there is voice is more accurate (if you use voice activation by volume)
  • you can now make the voice input more louder by moving the new slider up to 20 decibel, also you can click on 'Automatic' and say a few words to let the engine automatically check a good amplification factor
  • a problem with incorrectly deleting the UDP socket has been fixed, that was eventually responsible for the fact that sometimes UDP stopped to work
  • in graal3d you can open the playerlist with F7 again

Revision 12

December 3rd 2005

Updates:

  • Options for changing the visible distance, detail factor and turn on/off the terrain details
  • It is displaying a message when it is starting Graal3D, so you don't need to wonder anymore why there is no window for some seconds
  • Added more particle engine features:

emitter.wraptoclippingbox = true -> lets particles appear on the other side of the clipping box once they leave the box emitter.cliptoscreen = true -> updates the clipping box to match the visible area (only the x and y values of the clippingbox are updated) Those two options should be used together. The advantage is that it makes rain and snow effects look nicer since the rain drops and snow flakes don't disappear when you are walking fast. Once they leave on the left side of the screen they appear on the right side, and vice versa.

  • Modified the tiles drawing to cause less problems on SiS cards (mainly notebooks), please test the offline mode and Graal Kingdoms if you have such a gfx card, older versions of Graalv4 made problems there (black background or only lines of tiles)
  • Added script command openGraalURL(url) for secure login to the website, this is interesting for opening the upgrade page, guild panel etc.
  • The blue and green sets of GUI profiles are now added at the start of Graal (built-in) - GuiBlueWindowProfile etc. (you might still need to the guiblue*.png and guigreen*.png gfx on your server though)
  • Playerlist fix: players from other servers don't display red pm bubbles anymore

Revision 13

December 6th 2005

Updates:

  • fixed a problem that caused crashes or tile errors on SiS graphics card in offline mode and on Graal Kingdoms
  • tile drawing is faster again
  • correctly closing the sound device on closing Graal, so when restarting Graal the sound should not stop to work

Revision 14

December 9th 2005

Updates:

  • Fixed a problem with disappearing npcs when reentering a level after more than 5 minutes and having active npcs there
  • Fixed the position of gani-sounds on maps and gmaps
  • Particle engine: it is possible to let showimgs automatically follow the player, npc or projectile by using the attachtoowner variable:
  with (findimg(200)) {
    attachtoowner = true;
    attachoffset = {0,0,0};
  } 

'attachoffset' is optional. This new variables can be used to let a showimg, or a particle emitter of a showimg (showimg.emitter) automatically follow the player or npc, and so making the scripting of particle effects simplier (also works in gani scripts, just create a particle effect on the playerenters event).

  • Particle engine: using the new emitter.continueafterdestroy flag (true or false) you can let the particles smoothly fade out - by default all showimgs and particles are removed once the object (player, npc, projectile) is disappearing; with this option the existing particles will continue to fly, but new particles are not emitted.

A simple effect for projectile ganis (shoot command):

SCRIPT
function onPlayerEnters() {
  with (findimg(200)) {
    attachtoowner = true;
    layer = 2;

    // Emitter attributes
    emitter.continueafterdestroy = true;
    emitter.delaymin = 0.05;
    emitter.delaymax = 0.05;
    emitter.nrofparticles = 1;

    // Basic particle attributes
    emitter.particle.lifetime = 3;
    emitter.particle.image = "g4_particle_smoke.png";
    emitter.particle.mode = 1; // alpha transparent
    emitter.particle.alpha = 0.8;
    emitter.particle.zoom = 1;

    // Movement
    emitter.particle.angle = pi / 2;
    emitter.particle.speed = 8;
    emitter.addglobalmodifier("range", 0, 100000, "movex", "add", -4, -5);
    emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.9, 0.9);
    emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.2, 0.2);
    emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
    emitter.addlocalmodifier("range", 1, 3, "alpha", "replace", 0.8, 0);
    emitter.addlocalmodifier("range", 0, 3, "zoom", "add", 0.25, 0.25);
    emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 12, 4);
    emitter.addlocalmodifier("range", 0.5, 3, "speed", "replace", 4, 1.5);
    emitter.addlocalmodifier("once", 0, 0, "spin", "replace", 2, 4);
  }
}
SCRIPTEND 

- More gani effects:

ROTATEEFFECT sprite angle
STRETCHXEFFECT sprite factor (default 1)
STRETCHYEFFECT sprite factor (default 1) 

Works similar to the showimg and particle attributes rotation, stretchx and stretchy.