#Fanatic Edition
#####₪ About
Fanatic Edition is an experimental Cube 2: Sauerbraten client modification, developed by Fanatic members, available for Windows and Linux and licensed under the zlib/libpng license. The project itself is currently in alpha state and bugs/fixes appear daily. If you want to live on the bleeding edge of our development, feel free to try out our client and/or report bugs at our IRC channel.
#####₪ Features
★ Ingame IRC
★ Lua scripting
★ Image importing
★ Object importing
★ Ingame file sharing
★ Client side edit muting
★ Extended editing functions
★ Send your maps inclusive lightmaps
★ New special effects, playermodels and weapon enhancements
... and much more!
#####₪ Installation
Step §1:
Download the latest Cube 2: Sauerbraten SVN repository here or here.
Step §2:
Download the latest Fanatic Edition development release here
Step §3:
Unzip and copy everythig into your fresh created Sauerbraten directory; on linux, place faned_client into your bin_unix/ directory, on windows, place faned_client.exe into your bin/ directory.
Step §4:
On linux, run faned.sh, on windows, run faned.bat, to fire up the game.
#####₪ Updating
Same like installing, but remember to delete your configuration file faned_config.cfg; an outdated config file may result in errors.
#####₪ Usage
Filesharing: The Fanatic Edition sendfile function allows you to send and share - for example - a mymap.cfg for your map mymap.ogz. Run the command sendfile packages/base/mymap.cfg
; your config file will now be sent to the server. After that, your friend needs to run the command getfile packages/base/mymap.cfg
to save it and exec packages/base/mymap.cfg
to execute the config file. sendfile is not limited to map or configs files; you can share everything you want with it as long as the server is supporting it's file size. Other players without Fanatic Edition who may try to get your file using the default getmap
command will get the default could not read map error instead of your file. Remember: This works only if both players are using Fanatic Edition or another modified client with a simliar getfile function (SJM, CMEd).
Filesystem: Fanatic Edition is made to run next to your vanilla Sauerbraten SVN client and not to interfer with its file system; if you want to use your personal auth.cfg or autoexec.cfg with Fanatic Edition, you need to rename them to faned_auth.cfg / faned_autoexec.cfg, otherwise Fanatic Edition will ignore these files.
Importing Images: With Fanatic Edition, you can easy import image files to your map using LUA. Place myimage.png into your sauerbraten main directory, ingame enter the following command: lua importimagevcolor('myImage.png',100,100)
and wait till the converting process is finished. The full function's syntax is importimagevcolor('FiLE',WiDTH,HEIGHT,R,G,B,ALPHA)
.
Importing Objects: To use the blender importer, first install Wrack's SMC Exporter io_export_smc.py, located at faned/tools/ into Blender: File > User Preferences > Addons > Install Addon and don't forget to activate it. Now create some geometry, select it, hit File > Export > Sauerbraten (.smc), set desired grid and cubecount values (grid 0 and cubecount 50 are good values for testing) and back at Fanatic Edition, simply enter importsmc PATH/FiLE.smc
. This will load the .smc (Sauerbraten Marching Cubes) file to your current selection.
Ingame IRC: To use the IRC function, simply go to Main Menu > IRC, connect to a server, join a channel and hit the new keybind »i« to chat. You can use default IRC commands like NAMES
, PRIVMSG
, WHOIS
and WHOWAS
within this keybind, too.
Typewriting: To use the typewriter, simply select a cube's right face and run the command typegen "HELLO WORLD!"
. Note to write your text in uppercase (future fonts will also include lowercase characters). To change the typewriter's font, run the command typegen_font "Directory"
. Currently included public domain fonts:
»#yolo by Snowy« - Directory: tf_snowy_#yolo/
»1 by restcoser« - Directory: tf_restcoser_1/
»alphabet by TristamK« - Directory: tf_tristamk_alphabet/
»ANDROMEDA by Redon« - Directory: tf_redon_andromeda/
»BAD FONT by bum« - Directory: tf_bum_bad_font/
»Fanatic by Neo« - Directory: tf_neo_fanatic/
»GENERIC by TimmytheWhale« - Directory: tf_timmythewhale_generic/
»lib_rus by TristamK« - Directory: tf_tristamk_lib_rus/
»Pixel Font by Nyne« - Directory: tf_nyne_pixel_font/
»sYNDABC by sYNDERF« - Directory: tf_synderf_syndabc/
»Tiny Font by SomeDude« - Directory: tf_somedude_tiny_font/
#####₪ New Commands: Main
abort
Use this command for proper "crashing" FanEd;
anticheat 0|1
Enable or disable the anticheat detection system;
autorespawn 0|1
autosaydisconnect 0|1
autosaydisconnectmsg "STR"
autosaygg 0|1
autosayggmsg "STR"
autosaynp 0|1
autosaynpmsg "STR %s"
%s will be replaced with the player's name who teamkilled you;
autosaysorry 0|1
autosaysorrymsg "STR %s"
%s will be replaced with the player's name you teamkilled;
autosayteam 0|1
autoswitchclientteam CN
/ autounswitchclientteam CN
autoswitchweapon 0|1
Enable or disable automatic weapon switch on ammo pickup;
backgroundbluremphasis 0-100
backgroundblurrepeat 0-100
backgroundfog 0.0-1.0
backgroundimagefile STR
backgroundlogofile STR
bloodcolour RGB|HEX
bloodintensity FLOAT
centerconsole 0|1
centerconsolealpha 0-255
centerconsoledelay 0-10000
cgshotcolor RGB|HEX
cgshotduration iNT
cgshotsize FLOAT
codepad
Helper for CubeScript/Lua ingame scripting;
compass 0|1
confix iNT
Set fixed width for console lines;
consmoothfade 0|1
Enable or disable smooth console fading;
contimestamp 0|1|2
Enable or disable console time, 1: fullconsole, 2: always;
crosshairalpha 0.0f-1.1f
crosshairbumpfx 0|1
Enable or disable the crosshair bump effect;
crosshaircolor RGB|HEX
Change the color of your crosshair;
crosshairnames 0|1
Enable or disable drawing info text next to the crosshair (player->name);
crosshairnamesalpha 0-255
crosshairnamescolor 0-9-A-Z
crosshairnamesdelay 0-10000
ctfsoundset "STR"
Set the desired soundset for ctf modes;
damagemotion 0|1
Enable or disable special effects after getting damage from explosives;
date %FORMAT
Returns the current date/time in given format; example: echo (date %Y-%m-%d %H:%M:%S)
;
deathcamera 0|1
Enable or disable experimental actor following after death (Note: Other players will not see you spectating.);
deathpanicscreen 0|1
Enable or disable the deathpanic eyeveins screen;
deathpanicsound 0|1
Enable or disable the deathpanic heartbeat sound;
getbuildname
Returns "Cube 2: Sauerbraten - Fanatic Edition";
getbuildrevision
Returns the current Cube 2: Sauerbraten SVN revision Fanatic Edition is based on;
getbuildurl
Returns Fanatic Edition's current github URL;
getbuildversion
Returns Fanatic Edition's current build version;
getconline
Get the last console output; for specific words use (at $getconline iNT)
;
guialpha 0-255
guncolorfrags 0|1
Enable or disabled weapon related (colored) frag messages;
highlight "STR"
Highlight STR (play highlight sound), default: player1->name;
hudgunalpha 0-255
hudminiscoreboard 0|1
Show a small mini scoreboard at the right side of the hud;
hudminiscoreboardalpha 0-255
hudminiscoreboardcolor 0-9-A-Z
hudminiscoreboardforce 0|1
Force yourself to be the first player shown at the mini scoreboard;
hudminiscoreboardlimitcmode iNT
Limit the players shown at the mini scoreboard in ctf/collect mode (with radar);
hudminiscoreboardlimit iNT
Limit the players shown at the mini scoreboard;
hudstats 0|1
hudstatsalpha 0-255
hudstatscolor 0-9-A-Z
lasercolorrainbow 0|1
lasercolor RGB|HEX
lasercolorteam 0|1
lightningcolorrainbow 0|1
lightningcolor RGB|HEX
lightningcolorteam 0|1
pishotcolor RGB|HEX
pishotduration iNT
pishotsize FLOAT
playchatsound 0|1
playnearmisssound 0|1
playrespawnsound 0|1
positionpacketdelay 0-33
Less values are smoothing network lags;
radar STR
Set custom radar texture;
radarteammatesdead 0|1
Enable or disable radar icons for dead players (own team);
radarteammatesplayerstarts 0|1
Enable or disable radar icons for playerstarts (own team);
riflarecolor RGB|HEX
riflareduration iNT
riflaresize FLOAT
rishotduration iNT
rishotgravity iNT
rishotsize FLOAT
ritraillaser 0|1
ritraillightning 0|1
ritrailsmoke 0|1
ritrailspin 0|1
serverlistmax iNT
Set amount of servers shown at one server list page;
setfont FONT
Hook for dynamic font changing; myFont.cfg needs to be executed before: (exec packages/fonts/myFont.cfg
);
sgshotcolor RGB|HEX
sgshotduration iNT
sgshotsize FLOAT
shotsparks 0|1
showbuildversion 0|1
Enable or disable Fanatic Edition's build version in main menu;
showhighlight 0|1
showserverpreview 0|1
Enable or disable server previews before connecting to a server;
showteamscores 0|1
Show team scores time at upper right corner/below minimap;
showtimeremaining 0|1
Show remaining time at upper right corner/below minimap;
smokecolorrainbow 0|1
smokecolor RGB|HEX
smokecolorteam 0|1
spincolorrainbow 0|1
spincolor RGB|HEX
spincolorteam 0|1
system STR
Runs any system command ingame and returns exit/error informations;
teamblue
Join the blue team;
teamcolorblue RGB|HEX
teamcolorgreen RGB|HEX
teamcolorred RGB|HEX
teamred
Join the red team;
thirdpersonalpha 0-100
zoomscope 0|1
#####₪ New Commands: Editing
ambientocclusion 0-255
ambientocclusionradius 0.0-40.0
ambientocclusionprecision 0.0-17.0f
buildcylinder RADiUS HEiGHT POWER POSiTiON-X POSiTiON-Y POSiTiON-Z
buildhelix RADiUS HEiGHT POWER
buildmandelbrot
Customize via mandelbrotgrid
, mandelbrotwidth
, mandelbrotheight
, mandelbrotdepth
and mandelbrotiterations
;
buildoctahedron RADiUS POWER POSiTiON-X POSiTiON-Y POSiTiON-Z
buildparaboloid RADiUS POWER POSiTiON-X POSiTiON-Y POSiTiON-Z
buildsimplexnoise RADiUS POWER POSiTiON-X POSiTiON-Y POSiTiON-Z
buildsimplexsphere iNNER OUTER GRiD NOiSE SCALiNG THRESHOLD
buildsphere RADiUS POWER POSiTiON-X POSiTiON-Y POSiTiON-Z SHAPE-X SHAPE-Y SHAPE-Z)
buildtorus RADiUS RANGE DiRECTION POSiTiON-X POSiTiON-Y POSiTiON-Z
calclightradius RADiUS
Local calclight at player's current position with given radius; set to 0 to disable);
clearbots
Remove all connected bots at once;
clearpickups
Remove all ffa ents: ammo, health, armor, etc.;
collisions 0|1
Enable or disbale collisions with other players or mapmodels;
conoutf_healthboost 0|1
Enable or disable console output on health boost;
conoutf_quaddamage 0|1
Enable or disable console output on quad damage;
cubelimit iNT
Set a limit of cubes other players are allowed to change at once; warn when this limit exceeds;
derpycn CN TYPE ATTR1 ATTR2 ATTR3 ATTR4 ATTR5
editent iNDEX X Y Z TYPE ATTR1 ATTR2 ATTR3 ATTR4 ATTR5
Entity scripting hook;
editmute CN
/ uneditmute CN
fragrecstart
Start recording frags (actor, victim, location) to >fragrec.log;
fragrecstop
Stop recording frags (actor, victim, location) to >fragrec.log;
genmaze X Y SEED
Maze generation; grid is set by selection;
gotodist iNT
Customize the distance for /goto and /gotosel;
grid2Dselectioncolor RGB|HEX
Set the color of the 2D selection box in editmode;
grid3Dselectioncolor RGB|HEX
Set the color of the 3D selection box in editmode;
gridhoverselectioncolor RGB|HEX
Set the color of the hovered selection in editmode;
gridselectioncolor RGB|HEX
Set the color of the selection in editmode;
importrec FiLE
Import .rec files exported from CMEd;
importsmc FiLE
Import .smc files exported from Blender;
playasound iNT
playasoundat iNT CN
printsvarescaped 0|1
If enabled, re-print map SVAR (maptitle, cloudlayer, ...) changes escaped;
rave 0|1
Just for fun: /rave 1 will loop through near all possible map variable colors, /rave 0 sets everything back like it was before;
replacetex iNT iNT 0|1
Replace specific texture (iD) with another specific texture (iD), 0|1 everywhere or in selection only;
receiveai 0|1
Enable or disable receiving initial packages for artifical intelligences aka bots;
receivenewmap 0|1
Enable or disable receiving /newmap packets (/getmap to be back in sync);
receiveremip 0|1
Enable or disable /remip packets (/getmap to be back in sync);
receivesendmap 0|1
Enable or disable forced /getmap (#sendto by other players); Warning: This will disable your own /getmap too!;
resetmonsters
Call this to update the monster entities after changing the spguard setting;
resetmovables
Call this to update the movable entities after changing the spguard setting;
savebak 0|1|2|3
backup saving; 0: no backup, 1: mapname.BAK, 2: mapname_totalmillis.BAK, 3: mapname_date_time.BAK;
selectionguard 0|1
Enable or disable warnings about editing a selection that is not in view;
setcampos X Y Z
Works only in coop edit mode;
settex iNT
spguard 0|1
Enable or disable monsters, barrels, boxes, elevators and platforms (works online only for FanEd and CMEd users);
teleport
Teleports you instantly to the location your crosshair is pointing at (default bind: "Q"); works only in coop edit;
teleportcn CN X Y Z
Teleport CN from his current position to X Y Z;
typegen "TEXT"
Write TEXT using premade cube fonts;
typegen_font "DiRECTORY"
Change the typegen's font;
unlockmmodels
Loads a shitload of additional mapmodels into the F4 menu; used models have to be linked at the map.cfg
writeprotectogz 0|1
Enable to protect already existing maps from overwriting;
#####₪ New Commands: Events
> on* [ action ]
Additional event hooks for CubeScript usage;
onconnect [$arg1]
Returns: clientnum;
ondamage [$arg1 $arg2 $arg3 $arg4]
Returns: actor->clientnum, target->clientnum, actor->gunselect, damage;
ondemoend [ ]
;
ondemostart [ ]
;
ondied [$arg1 $arg2 $arg3]
Returns actor->clientnum, victim->clientnum, actor->gunselect;
ondropflag [$arg1]
Returns: clientnum;
oneditmode [$arg1 $arg2]
Returns: clientnum, value;
ongamepausechange [$arg1 $arg2]
Returns: clientnum, value;
ongamespeedchange [$arg1 $arg2]
Returns: clientnum, value;
onintermision [ ]
;
onjumppad [$arg1 $arg2]
Returns: clientnum, jumppad;
onmapchange [$arg1]
Returns: mapname;
onmapstart [ ]
;
onping [$arg1 $arg2]
Returns: clientnum, ping;
onresetflag [$arg1]
Returns: team;
onreturnflag [$arg1]
Returns: clientnum;
onscoreflag [$arg1 $arg2]
Returns: clientnum, team;
onservmsg [$arg1]
Returns: text;
onsuicide [$arg1]
Returns: clientnum;
ontakeflag [$arg1]
Returns: clientnum;
onteleport [$arg1 $arg2 $arg3]
Returns clientnum, teleport, teledest;
#####₪ New Commands: History
> Note: These New Commands load and save your /command history manually;
> By default, FanEd will load your /command history automatically;
loadhistory
;
savehistory
;
#####₪ New Commands: Informations
> $get*
Get client informations (own client);
$getarmour
;
$getcamposx
;
$getcamposy
;
$getcamposz
;
$getgunselect
;
$gethealth
;
$getphysstate
;
$getping
;
$getpitch
;
$getspeed
;
$getstate
;
$getsuicides
;
$getteamkills
;
$getvelx
;
$getvely
;
$getvelz
;
$getyaw
;
> (getclientinfo CN TYPE)
Get client informations (all clients);
TYPE 1: return client's current ai
;
TYPE 2: return client's current armour
;
TYPE 3: return client's current armourtype
;
TYPE 4: return client's current attackchan
;
TYPE 5: return client's current attacksound
;
TYPE 6: return client's current deaths
;
TYPE 7: return client's current edit
;
TYPE 8: return client's current flagpickup
;
TYPE 9: return client's current flags
;
TYPE 10: return client's current frags
;
TYPE 11: return client's current gunselect
;
TYPE 12: return client's current health
;
TYPE 13: return client's current idlechan
;
TYPE 14: return client's current idlesound
;
TYPE 15: return client's current lastaction
;
TYPE 16: return client's current lastattackgun
;
TYPE 17: return client's current lastbase
;
TYPE 18: return client's current lastnode
;
TYPE 19: return client's current lastpain
;
TYPE 20: return client's current lastpickup
;
TYPE 21: return client's current lastpickupmillis
;
TYPE 22: return client's current lastrepammo
;
TYPE 23: return client's current lasttaunt
;
TYPE 24: return client's current lastupdate
;
TYPE 25: return client's current lifesequence
;
TYPE 26: return client's current ownernum
;
TYPE 27: return client's current o.x
;
TYPE 28: return client's current o.y
;
TYPE 29: return client's current o.z
;
TYPE 30: return client's current physstate
;
TYPE 31: return client's current ping
;
TYPE 32: return client's current pitch
;
TYPE 33: return client's current plag
;
TYPE 34: return client's current playermodel
;
TYPE 35: return client's current privilege
;
TYPE 36: return client's current respawned
;
TYPE 37: return client's current smoothmillis
;
TYPE 38: return client's current state
;
TYPE 39: return client's current suicided
;
TYPE 40: return client's current tokens
;
TYPE 41: return client's current totaldamage
;
TYPE 42: return client's current totalshots
;
TYPE 43: return client's current vel.magnitude()
;
TYPE 44: return client's current vel.x
;
TYPE 45: return client's current vel.y
;
TYPE 46: return client's current vel.z
;
TYPE 47: return client's current weight
;
TYPE 48: return client's current yaw
;
> (get* iNT)
Get team score informations: STR = "evil" or "good";
(getteamscore STR)
> (get* iNT [STR])
Get vslot informations: iNT = texture-id, STR = shader-parameter;
(getvalpha iNT)
;
(getvcolor iNT)
;
(getvlayer iNT)
;
(getvoffset iNT)
;
(getvrotate iNT)
;
(getvscale iNT)
;
(getvscroll iNT)
;
(getvshaderparam iNT STR)
;
#####₪ New Commands: IRC
ircaddchan
ircaddclient
ircaddrelay
ircauth
ircbind
ircconnect
ircconns
ircdisconnect
ircfilter
ircfriendlychan
irchighlight "STR"
ircjoinchan
ircnick
ircpass
ircpasschan
ircport
ircquitmessage "STR"
ircrelaychan
ircsay
ircserv
#####₪ New Commands: Physics
> Note: These commands work only in coop edit mode;
airjump 0|1
Airjumping: (hit jump key while in air);
bunnyhop 0|1
Bunny hopping: (hold jump key for continuous jumping);
walljump 0|1
Walljumping: (hit jump key while jumping against a wall);
walljumpvel FLOAT
floorz FLOAT
gravity FLOAT
jumpvel FLOAT
slopez FLOAT
stairheight FLOAT
velocity FLOAT
wallz FLOAT
lookup iNT
lookdown iNT
lookleft iNT
lookright iNT
#####₪ Credits
★ Nyne: Main Development, Design, C, Lua, CubeScript
★ bum: C, Lua, CubeScript
★ Pyccna: Playermodel Reskins and Hudguns
★ Wrack: Marching Cubes functions
★ Q009: SauerEnhanced functions
★ AC: CMEd functions
★ RaZgRiZ: CubeScript Martial Arts
#####₪ Original Cube 2: Sauerbraten:
★ Wouter "Aardappel" van Oortmerssen
★ Lee "eihrul" Salzman
★ Mike "Gilt" Dysart
★ Robert "baby-rabbit" Pointon
★ John "geartrooper" Siar
★ Quinton "Quin" Reeves and others.
#####₪ Contact
IRC: chat.kerat.net #fanatic
Server: 192.95.30.66 28785
Website: fanaticclan.com