Short: Karate Demo Script Fighter 1.2 a demo scripting language with examples. Author: www.k-fighter.net Uploader: krabob free fr Type: demo/aga Version: 1.2 Architecture: m68k-amigaos Distribution: Aminet Again a spread of the public karate engine you can also upload on www.k-fighter.net This is spread Number 6 (01.09.2005) !!! www.k-fighter.net |_ /_________| ________ |m4nkind _ _ _ _____ -- |ŻŻŻŻŻŻŻŻ/// .:::: /|/ŻŻ: | Ż ŻŻ|ŻŻŻ Ż :ŻŻ| ::::. :: ° / |/ŻŻ _____ [ Karate Demo-Script Fighter ] ŻŻ| /° :: `___'__/ / / /_____________________________________________ __`___' / .____8 /____ / /__ ____ ____ / ______/ 8____. / / :8/ / |: |/ /: |. |: | |: |. ___ ___/ __>___ 8: / /__/ | / _/| |_ |/ _/| |_ | | . __ / / __/__/ |__. |__| / /__|. |__| / / | | _. / ____/ //| | ======____/===/____/=====____/===/____/==| |======____/=== | |\ \| | ___ | | |// Ż| : | _______/ / ________ | |__________________________ | : |Ż | | / _____/ / / ______/___ | | / ______/____ | | | | / __> |ŻŻ|/ __ ||: |_| |___ ___/ __>___|: | | | |___| . | |. | || _ | | | . |/ _/ |___| | | . / |__| ____ || | |__| | | _. /__|. _ | | `::' ===_/============|__|| |=======| |======____/=====____/== `::' | | _ __ _ ____|__ _ __|____ _ __ _ /________/-- |________\ /_________|bLa.2oo2Ż Ż |_ | So this is version 1.2. YOU CAN spread. Works,suggestions and most of all BUGG REPORTS are welcome !!! krabob@free.fr Karate is a demo Script engine used to run demo on a lot of amiga, from 68030 aga with no FPU to 68060 or UAE amiga with Cybergraphics. it uses simple text scripts to define the whole demo. it's xml-HTML like. ---------------------------------------------------------------------------------- ---- Differences between spread 6 and spread5: --- In the pack: - k3d.Fx was extended and a new directory Tutorial_3D2 was created With tutorial 3D12 to 3D15, explaining new render functions like bump mapping and Lightwave3D scene reading. A bunch of nice things to see and many ways to improve your state of the art productions. - Tutorial C06_PlayScriptLink was added in Tutorial_C. It provides a way to do automatic chaining between parts. In the code: - new commandline parameter: "nmt" (no mouse test): mouse click will not quit the demo, only key "esc" will be able to quit. For interested people, Plugin interact.Fx had been added, but is not actually commented in a tutorial. It will be done in a future special interact plugin package. ( Use commandline "c" to ask for interact.Fx functions and parameters if you are curious). - The spline builtin functions (spl,splmod, and ktable) was again recoded to be able to apply 3D scene cinematics in a more powerful way. It implies that you should not mix the new K3D.Fx with an older Karate executable. ---- Differences between spread 5 and spread4 (07 2004): --- In the pack: - added image constructor and rectangle constructor. It provides a way to do 'Texture Rendering', and a lot of other tricks. Karate's capacities to do strange effect are multiplied by 100 !!! (at least.) it's in tutorial D04. - added some more effect in k3d.fx , it is explained in tutorial 3D09 , 3D10 , 3D11 In the code: - Corrected a bug on the texture mapping that was not doing well when UV mapping was more than 128 pixel wide on a triangle. - in the 3D: In some rectangle conditions, it wasn't possible to change the fov focale length AND the rectangle. Corrected. - put some useless muls.l dx,dy:dz asm instruction to garbage, and did some optimisations.. let me say it: AMIGA is back ! yes,and k3d.Fx is faster. - The whole plugin interface has been recoded: now ".Fx" plugins are no more shared libraries but real code chunks. Karate could crash if differents version where run one after the others. this will be no more the case starting with this version. devkit for plugins is done and downloadable on the website. ---- Differences between spread 4(20/03/2004) and spread3: --- In the pack: - the k3d.Fx first version has been added, providing a full 3D engine with many features ! A complete directory for 3D tutorials was also added. - parameter BounceOn added, it's like bounce but it bounces on and on. In the code: - The angles passed to SetCamCoord and some stuffs had changed: Consider now 1.0 = Pi = 180°. It means you will have to make minor modifications to your previous scripts. I swear it will never change again :-). - minor corrections. text parser has partially been rewritten and now use less memory. A bug was found in dbm.fx, and it seems ok now. - The plugins interface has changed: it means you can't mix old .Fx with new karate and vice versa. If you launch an old karate demo, then a new karate version just after, use command 'avail flush' between, to avoid old '.library' persistence. BUT NOW CONSIDER IT IS FINAL. Whole Karate Source code and a plugin devkit may be released in the coming month. ---- Differences between spread 3(05 2003) and spread 2: ---- In the pack: - karate68k now works on morphos systems. Note that the example using sound will not work in the corresponding drivers does not. (need AHI and dbplayer.library for digibooster,and p61 module hit paula directly.) - about possible screen errors at opening: if you use a TFT screen and have some screen mode available that wouldn't display on such screens, be aware karate can choose one of these modes when parameters w=width and h=height are used. if these happen, change the asked resolution to one that fit your screen, or try to disable the undisplayable modes in your video driver configuration, or more simply, don't use w= and h=, then a ASL screen mode requester will open it. - if you use a Picasso system, karate was reported to work perfectly. Nevertheless the CGX emulation seems to not find some mode requested. if this happens, erase w=width and h=height in the command lines, an ASL screen mode requester will open so you can choose a 8bit screen mode by yourself.(then asl shouldn't provide something else than 8bit picasso modes, but sadly it does.) - New sprite image animation features, and image stoping and blitting features was added too. - MultiZoom and MultizoomLight effect has been commented. - MapRect effect has been commented. It provides a simple 256x256 image deformation effect. - as almost noone understood the colortable image color-remap trick, a new constructor for it, has been implemented, using a image label as input palette ONLY to compute the color table. the result will be the same, no more need to "remap" a 24 bit image. but it takes a lot more cpu when starting: tablelabel | imagelabel |0|255|255|255 BE WARNED: colortable are necessary for ALL color operation like motion blur, radial blur, but also spritetable or spritelight. and IF YOU USE DIFFERENT PALETTES, YOU MUST DO DIFFERENT COLORTABLE. In the codes: - aft, aftmod, spl and splmod table parameters have been recoded in asm, using no fpu libs floats anymore, and are buggless. B05_TableParam tutorial has been finished to show splines differences with aft. - sprites ( all fx ) have been recoded faster and if sprite image have 256 pixel width, a special optimisation avoid multiplication-by-line. this is far faster for displaytext effects. - enormous optimisations have been done on deformation fx (twirl, warper), now far more usable on 68030 amigas. - some silly bugs removed. ---- Difference between spread 2(28.09.2002) and spread 1(june): ---- In the pack: - the exemple/tutorial has been written (C04 + C04b) - the ground ( D01 ) and tunnel ( D02 ) exemple+tutorial: DONE. - powerful ( D03 ) exemple of combination with camera - the boot startup script ( C05 ): exemple and tutorial done. In the codes: - currently support the undocumented "strange interactivity" commands. more about this in a special pack. - added builtin fx: "SetCamTarget", some kind of "SetCamCoord" (D03). Bugs corrected: - dbplayer.library from aminet was not included in previous package !!! you must have it in libs: to use dbm musics. if the use of DBM musics crash your amiga, try to select a less strange AHI default mode. ---------------------------------------------------------------------------------- DOCUMENTATION: It is as "open" as possible: you can add effects (and object types used by these effects) in plugins modules (in fact shared libs in directory Fx) And the whole sources will be spread for any use. (more effects will come in the future.) Here are a serie a Tutorial to learn the language, which is a very convenient language. You can execute each script as a demo or look what's inside for learning. To explain a bit: the text langage describe the data used in the demo, using tags: imagelabel | path/image.iff ie: this will build an image usable by effects.... then it defines the parts of the demos (...) , which contain a serial of effects (...) that are put on the screen in the order they were writen in the part, like "layers". then the parts are mounted in the desired order with a ... and a KScript can stand for the script of the whole demo. everything is non-case-sensitive. The great thing with karate is that if an error occur in anywhere in the script, you get a very clear error message, giving you the line, the faulty text file, and the reason why it failed, so you will never stay on an error a long time with karate. Anyway, here is a serial of tutorial to help you learn the karate, and discover how powerful it is. There are only a few effects available at this time, but you will be astonished to see all you can do with a few things. As effects stands in Plugins in the directory Fx, no doubt karate will soon be able to manage any effects, and more !!! Open the first Tutorial directory, You have 2 icons for each exemple: one launch the demonstration with a simple shell script that execute a command like: Karate s=TutorialA/A01_MinimalExample.txt w=320 h=240 it's a way to launch karate with a script. note it's possible to choose any resolution. the second icon open the script text in multiview. By the way , what are the options of karate ? w=320 set the resolution to play this demo. (width, height) h=240 s=script.txt the script yo play c just type Karate c and you will get the whole configuration check. this is usefull to know the list of all effects available, it also prints the parameter list asked by each effects. b=bootscript.txt (not needed) see high level tutorial to use this !!