1 Button Demo Script?

neonfaktoryneonfaktory Join Date: 2002-07-13 Member: 939Members
<div class="IPBDescription">quickdem1.dem, quickdem2.dem...</div> Hey everyone. I would like this for myself and I'm sure many others would like it as well if it worked. Is there any way to make a "quicksave"-esq demo recording script?

My dream demo script would be a 1 button command that starts a demo with a base name like "quickdem", tags on a number that increments the more you record (like screenshots) and also stops the demo with another press. I doubt this is even possible.

So can anyone think of the closest possibility to this idea? Theory or actual script is fine. Thanks for any help <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->

Comments

  • SillyGooseSillyGoose Join Date: 2003-03-16 Member: 14572Members, Constellation
    I don't think that that would be too great of a thing as when you currently start a demo Half Life crashes. But if this is ever addressed I think it would a cool little bind/script.
  • TheHornetTheHornet Join Date: 2002-10-31 Member: 1776Members, Constellation
    wha? HL doesn't crash for me when you make demos... but i'll look into what it takes to make a script like this... i'm sure its possible
  • GwahirGwahir Join Date: 2002-04-24 Member: 513Members, Constellation
    half-life crashes when starting a demo if someone is using voice-comm at the time
  • TeoHTeoH Join Date: 2002-12-30 Member: 11640Members
    As far as i can see, there is no auto-increment feature that can be used for demos. But you could write a script which cycles through a finite number of demo names, like this:

    alias godemo "godemo1"
    alias godemo1 "godemo2;alias godemo godemo3"
    alias godemo2 "nsdemo1"
    alias godemo3 "stopdemo;alias godemo godemo1"

    alias nsdemo1 "record nsdemo1;alias godemo2 nsdemo2"
    alias nsdemo2 "record nsdemo2;alias godemo2 nsdemo3"
    alias nsdemo3 "record nsdemo3;alias godemo2 nsdemo4"
    alias nsdemo4 "record nsdemo4;alias godemo2 nsdemo5"
    alias nsdemo5 "record nsdemo5;alias godemo2 nsdemo6"
    alias nsdemo6 "record nsdemo6;alias godemo2 nsdemo7"
    alias nsdemo7 "record nsdemo7;alias godemo2 nsdemo8"
    alias nsdemo8 "record nsdemo8;alias godemo2 nsdemo9"
    alias nsdemo9 "record nsdemo9;alias godemo2 nsdemo1"

    bind key godemo

    This creates a cycle, where pressing 'key' begins a demo, pressing it again stops the demo, then pressing it a third time starts another demo under a different name. The problem is you can only have a finite number of demonames in the cycle, and once you complete the cycle you will begin overwriting your first demos. Additionally, whenever you re-execute the script (ie. if you restart the game) the script will begin from the start, overwriting the first demos.

    There isnt a good solution to this without a built in incremental demo function.

    (Disclaimer: Script written off the top of my head as an example, hasn't actually been tested. Works logically but i might have missed a comma somewhere etc.)
  • TheHornetTheHornet Join Date: 2002-10-31 Member: 1776Members, Constellation
    i thought it was stop not stopdemo to end the demo recording...
  • LeetVegeTaLeetVegeTa Join Date: 2003-02-27 Member: 14103Members
    i think it is too but he said he wrote off the top of his head so probly a typo or something
    <!--QuoteBegin--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->(Disclaimer: Script written off the top of my head as an example<!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
  • eve_playeroneeve_playerone Join Date: 2003-02-24 Member: 13929Members
    edited March 2003
    bind f12 startdemo
    alias startdemo "bind f12 stopdemo;record quickdemo;developer 1;echo **recording to quickdemo.dem**;developer 0"
    alias stopdemo "bind f12 startdemo;stop;developer 1;echo **finished recording to quickdemo.dem**;developer0"
  • RoscoeRoscoe Join Date: 2002-11-29 Member: 10221Members
    <!--c1--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>CODE</b> </td></tr><tr><td id='CODE'><!--ec1-->alias d1 "developer 1"
    alias d0 "developer 0"

    //---- Demo Recorder
    alias recb dem1
    alias dem1 "record NSDemo1; d1; echo **Recording Demo 1**; d0; bind . sdem1"
    alias dem2 "record NSDemo2; d1; echo **Recording Demo 2**; d0; bind . sdem2"
    alias dem3 "record NSDemo3; d1; echo **Recording Demo 3**; d0; bind . sdem3"
    alias dem4 "record NSDemo4; d1; echo **Recording Demo 4**; d0; bind . sdem4"
    alias dem5 "record NSDemo5; d1; echo **Recording Demo 5**; d0; bind . sdem5"
    alias dem6 "record NSDemo6; d1; echo **Recording Demo 6**; d0; bind . sdem6"
    alias dem7 "record NSDemo7; d1; echo **Recording Demo 7**; d0; bind . sdem7"
    alias dem8 "record NSDemo8; d1; echo **Recording Demo 8**; d0; bind . sdem8"
    alias dem9 "record NSDemo9; d1; echo **Recording Demo 9**; d0; bind . sdem9"
    alias dem10 "record NSDemo10; d1; echo **Recording Demo 10**; d0; bind . sdem10"
    alias sdem1 "stop; d1; echo **Demo 1 Complete**; d0; bind . dem2"
    alias sdem2 "stop; d1; echo **Demo 2 Complete**; d0; bind . dem3"
    alias sdem3 "stop; d1; echo **Demo 3 Complete**; d0; bind . dem4"
    alias sdem4 "stop; d1; echo **Demo 4 Complete**; d0; bind . dem5"
    alias sdem5 "stop; d1; echo **Demo 5 Complete**; d0; bind . dem6"
    alias sdem6 "stop; d1; echo **Demo 6 Complete**; d0; bind . dem7"
    alias sdem7 "stop; d1; echo **Demo 7 Complete**; d0; bind . dem8"
    alias sdem8 "stop; d1; echo **Demo 8 Complete**; d0; bind . dem9"
    alias sdem9 "stop; d1; echo **Demo 9 Complete**; d0; bind . dem10"    
    alias sdem10 "stop; d1; echo **Demo 10 Complete, RESTARTING LOOP**; d0; bind . dem1"

    bind "." "recb"  //goes in config

    echo .: Demo_Recorder.cfg LOADED :.<!--c2--></td></tr></table><span class='postcolor'><!--ec2-->

    This binds the quick record to the "." key, recording 10 demos named NSDemo 1-10 and restarting the loop once 10 demos have been recorded. If you wanna use another key than "." you have to change every occurence. I like using the bind in the structure better so it doesnt reset and overwrite good demos every time you retry. Some things everyone recording HL demos should know:

    1) Don't record while people are talking on voice comm, usually crashes you back to desktop
    2) If you are recording and the server changes maps type retry in console or you are begging for a corrupted demo.
    3) Stopping a demo is another good safeguard against corruption rather than letting it record through the end of the round.

    PS: HL demos suck...wish they would "borrow" some Q3 code to make them a bit more reliable.
  • Young_TrotskyYoung_Trotsky Join Date: 2003-01-14 Member: 12285Members
    erm, i dont know about u guys, but i use a very simple bind for recording my clans matches:

    bind "F6" "record a.dem"
    bind "F7" "record b.dem"
    bind "F8" "record c.dem"
    bind "F9" "record d.dem"
    bind "F10" "stop"

    in the first round, i hit f6 then hit f10 at the end, in the second round i hit f7 then hit f10 at the end etc.

    sorry if im being a n00b, but it works for me <!--emo&???--><img src='http://www.unknownworlds.com/forums/html/emoticons/confused.gif' border='0' style='vertical-align:middle' alt='confused.gif'><!--endemo-->
  • MaTTMaTT Join Date: 2002-11-01 Member: 3033Members
    //demo recorder
    alias d1 "developer 1"
    alias d0 "developer 0"
    alias rec "demo1"
    alias demo1 "record demo1; d1; echo Recording demo 1; d0; alias rec enddemo1"
    alias enddemo1 "d1; echo End recording demo 1; w2; d0; stop demo; alias rec demo2"
    alias demo2 "record demo2; d1; echo Recording demo 2; d0; alias rec enddemo2"
    alias enddemo2 "d1; echo End recording demo 2; w2; d0; stop demo; alias rec demo3"
    alias demo3 "record demo3; d1; echo Recording demo 3; d0; alias rec enddemo3"
    alias enddemo3 "d1; echo End recording demo 3; w2; d0; stop demo; alias rec demo4"
    alias demo4 "record demo4; d1; echo Recording demo 4; d0; alias rec enddemo4"
    alias enddemo4 "d1; echo End recording demo 4; w2; d0; stop demo; alias rec demo5"
    alias demo5 "record demo5; d1; echo Recording demo 5; d0; alias rec enddemo5"
    alias enddemo5 "d1; echo End recording demo 5; w2; d0; stop demo; alias rec demo6"
    alias demo6 "record demo6; d1; echo Recording demo 6; d0; alias rec enddemo6"
    alias enddemo6 "d1; echo End recording demo 6; w2; d0; stop demo; alias rec demo7"
    alias demo7 "record demo7; d1; echo Recording demo 7; d0; alias rec enddemo7"
    alias enddemo7 "d1; echo End recording demo 7; w2; d0; stop demo; alias rec demo8"
    alias demo8 "record demo8; d1; echo Recording demo 8; d0; alias rec enddemo8"
    alias enddemo8 "d1; echo End recording demo 8; w2; d0; stop demo; alias rec demo9"
    alias demo9 "record demo9; d1; echo Recording demo 9; d0; alias rec enddemo9"
    alias enddemo9 "d1; echo End recording demo 9; w2; d0; stop demo; alias rec demo10"
    alias demo10 "record demo10; d1; echo Recording demo 10; d0; alias rec enddemo10"
    alias enddemo10 "d1; echo End recording demo 10; w2; d0; stop demo; alias rec demo11"
    alias demo11 "record demo11; d1; echo Recording demo 11; d0; alias rec enddemo11"
    alias enddemo11 "d1; echo End recording demo 11; w2; d0; stop demo; alias rec demo12"
    alias demo12 "record demo12; d1; echo Recording demo 12; d0; alias rec enddemo12"
    alias enddemo12 "d1; echo End recording demo 12; w2; d0; stop demo; alias rec demo13"
    alias demo13 "record demo13; d1; echo Recording demo 13; d0; alias rec enddemo13"
    alias enddemo13 "d1; echo End recording demo 13; w2; d0; stop demo; alias rec demo14"
    alias demo14 "record demo14; d1; echo Recording demo 14; d0; alias rec enddemo14"
    alias enddemo14 "d1; echo End recording demo 14; w2; d0; stop demo; alias rec demo15"
    alias demo15 "record demo15; d1; echo Recording demo 15; d0; alias rec enddemo15"
    alias enddemo15 "d1; echo End recording demo 15; w2; d0; stop demo; alias rec demo16"
    alias demo16 "record demo16; d1; echo Recording demo 16; d0; alias rec enddemo16"
    alias enddemo16 "d1; echo End recording demo 16; w2; d0; stop demo; alias rec demo17"
    alias demo17 "record demo17; d1; echo Recording demo 17; d0; alias rec enddemo17"
    alias enddemo17 "d1; echo End recording demo 17; w2; d0; stop demo; alias rec demo18"
    alias demo18 "record demo18; d1; echo Recording demo 18; d0; alias rec enddemo18"
    alias enddemo18 "d1; echo End recording demo 18; w2; d0; stop demo; alias rec demo19"
    alias demo19 "record demo19; d1; echo Recording demo 19; d0; alias rec enddemo19"
    alias enddemo19 "d1; echo End recording demo 19; w2; d0; stop demo; alias rec demo20"
    alias demo20 "record demo20; d1; echo Recording demo 20; d0; alias rec enddemo20"
    alias enddemo20 "d1; echo End recording demo 20... Next demo will overwrite demo 1.; w2; d0; stop demo; alias rec demo1"

    bind "x" "rec"


    20 demo's recorder... <!--emo&:D--><img src='http://www.unknownworlds.com/forums/html/emoticons/biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif'><!--endemo-->
Sign In or Register to comment.