# Non-scriptless runs tool usage

**URL:** <https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371>\
**Category:** λ Half-Life\
**Created:** [June 30, 2014, 10:57am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371 "2014-06-30T10:57:12Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![YaLTeR](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/yalter/32/553_2.png) [@YaLTeR](https://forums.sourceruns.org/u/YaLTeR)\
**Post date:** [June 30, 2014, 10:57am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/1 "2014-06-30T10:57:12Z")

</div>

Please explain your choice when voting.

Let me explain what exactly I mean by +tas\_autojump (or similar). It is a function that (by any means) automatically jumps at the exact frame when the player touches the ground after being in the air. This function should NOT be able to make the player jump twice on two consecutive frames since that is not possible (one needs to release the jump button before pressing it again).  
For those familiar with SPT, it’s exactly what _y\_spt\_autojump_ WITH _y\_spt\_autojump\_ensure\_legit_ does. This is exactly what _bla\_pogo_ does in Ghosting. This is (obviously) exactly what _+tas\_autojump_ does in HL TAS Mod. This is exactly what _tas\_cjmp_ does in TAS Team’s mod.

So, how does this differ from the usual \_special or other jump loop? The loop presses the jump button on (in the best case) every other frame. If the player lands on the frame when the loop releases the jump button, they will get one frame of ground friction (which is not good because it means slowdown). +tas\_autojump (or similar) does not have such drawback since it only jumps on the frames on which it should jump. This might also reduce the demo file size since there are no unused +jumps.

Now, _+tas\_ducktap_ (or similar) is the function that works like _+tas\_autojump_ (as described above), but presses +duck instead allowing for a perfect duckroll. This also removes the camera twitching in the air and the ducked frames (of low airacceleration) in the air.  
This is what _+tas\_groundduck_ does in HL TAS Mod v1.4, this is what _+tas\_ducktap_ does in HL TAS Mod v2.0+, this is what _tas\_dtap_ does in TAS Team’s mod.

I personally think that both of these should be allowed since the point of making a speedrun non-scriptless is to get the repetitive actions (like jumping) out of the way, and what’s the point in getting them out of the way imperfectly.

I understand that one of the main points of concern here is that while scripts are built into the game, the functions that I described require a sort of external modification, whether a modified DLL, or a plugin. This is actually the main reason this poll and this topic exists, so that we can sort this question out. It’s much easier in Source where we used AHK for that kind of stuff, which is already an external tool. Unfortunately, this is not the case with GoldSource.

[spoiler=Non-scritless runs]Now, I understand that the whole “non-scriptless” definition is kind of vague. I believe that’s the reason why SDA disallows the scripted runs. For example, HL21: while for most of the run “non-scriptless” meant a bhop / duckroll loop + some helping binds perhaps, like switching the weapons and whatnot, there were parts (triggerdelay) where “non-scriptless”-ness made it almost like a TAS - the script did all the movement.  
I believe that one solution to that would be to specifically define the type of “non-scriptless”-ness used, like “Jump loop, duckroll loop and movement scripting in the triggerdelay parts”. That would also get rid of the question raised in this poll.[/spoiler]

---

<div class="post-metadata">

**Author:** ![execut4ble](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/execut4ble/32/14_2.png) [@execut4ble](https://forums.sourceruns.org/u/execut4ble)\
**Post date:** [June 30, 2014, 2:14pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/2 "2014-06-30T14:14:59Z")

</div>

I voted yes for autojump, basically it does the same thing as \_special with a lot less hassle and its guaranteed to work on most conditions.

---

<div class="post-metadata">

**Author:** ![D4rw1N](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/d4rw1n/32/15_2.png) [@D4rw1N](https://forums.sourceruns.org/u/D4rw1N)\
**Post date:** [June 30, 2014, 3:41pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/3 "2014-06-30T15:41:18Z")

</div>

EDIT: Misclicked on the poll and voted for the wrong option. Fixed now though.

---

<div class="post-metadata">

**Author:** ![WindedCone859](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/w/f6c823/32.png) [@WindedCone859](https://forums.sourceruns.org/u/WindedCone859)\
**Post date:** [June 30, 2014, 5:19pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/4 "2014-06-30T17:19:49Z")

</div>

I think both should be used  
its because due to peoples PC’s not being able to run at say a stable 250 fps all the time things like autojump  
that dont depend on FPS is helpful to them  
its also the fact that… its a scripted run, and I think things like +tas\_autojump are in a way, scripts (YES their not actually scripts but they do the same thing, bhop)

(also if yes overrides the no vote add that to bunnymodpro plz it would be fucking awesome)

---

<div class="post-metadata">

**Author:** ![PJC](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@PJC](https://forums.sourceruns.org/u/PJC)\
**Post date:** [June 30, 2014, 6:10pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/5 "2014-06-30T18:10:12Z")

</div>

This isn’t even really down to FPS, we’re talking about the fact that autojump is more consistent than regular scripts no matter what FPS you’re using or what script you’re using, as explained here:

> [@YaLTeR](#):
>
> So, how does this differ from the usual \_special or other jump loop? The loop presses the jump button on (in the best case) every other frame. If the player lands on the frame when the loop releases the jump button, they will get one frame of ground friction (which is not good because it means slowdown). +tas\_autojump (or similar) does not have such drawback since it only jumps on the frames on which it should jump. This might also reduce the demo file size since there are no unused +jumps.

Also, we’re talking consistency of jump timing here, not anything to do with the air acceleration physics. Autojump is useful to anyone, no matter what framerate you’re running. People who can’t run at certain framerates stable are just at a disadvantage of less air acceleration, this doesn’t actually have anything to do with jump timing.

---

<div class="post-metadata">

**Author:** ![Zezima242](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/z/b3f665/32.png) [@Zezima242](https://forums.sourceruns.org/u/Zezima242)\
**Post date:** [June 30, 2014, 8:21pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/6 "2014-06-30T20:21:27Z")

</div>

Well, ducktap is the most usefull thing in nojump speedrun. So much less headache. Sad, that you didnt posted this pool earlier.

---

<div class="post-metadata">

**Author:** ![Bloodvez](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/bloodvez/32/327_2.png) [@Bloodvez](https://forums.sourceruns.org/u/Bloodvez)\
**Post date:** [July 1, 2014, 11:47am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/7 "2014-07-01T11:47:47Z")

</div>

Voted no. Because it’s external.  
Voted yes. Nevermind.

---

<div class="post-metadata">

**Author:** ![Burgmond](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/b/a9adbd/32.png) [@Burgmond](https://forums.sourceruns.org/u/Burgmond)\
**Post date:** [July 2, 2014, 4:55am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/8 "2014-07-02T04:55:49Z")

</div>

So your saying that if a scripted run uses a modified DLL or other files (such as to achieve perfect jumping/duckrolling) they should be counted as a TAS? If so then I forward this decision.

The more I think about it, the more I start treating HL21 as a TAS for the simple fact that bits of it were 100% scripted. If anything I prefer (although it clunky) AHK and bhop/duckroll/obbo scripts be the only thing used. While I do like scripted runs some of them, such as HL21, are a bit extreme in the use of them.  
(probably not on topic but who cares, yay for rants!)

> [@YaLTeR](#):
>
> I understand that one of the main points of concern here is that while scripts are built into the game, the functions that I described require a sort of external modification, whether a modified DLL, or a plugin. This is actually the main reason this poll and this topic exists, so that we can sort this question out. It’s much easier in Source where we used AHK for that kind of stuff, which is already an external tool. Unfortunately, this is not the case with GoldSource.

As long as no frame-perfect jumps or modified DLLs and files are used I’m fine with scripted runs on GoldSrc (as long as they use scripts found on the GoldSrc scipts wiki page)

However in regards to the poll, +tas\_groundduck and +tas\_autojump or whatever its called, should only be used in a TAS.

---

<div class="post-metadata">

**Author:** ![PJC](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@PJC](https://forums.sourceruns.org/u/PJC)\
**Post date:** [July 2, 2014, 6:04am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/9 "2014-07-02T06:04:34Z")

</div>

> [@Burgmond](#):
>
> The more I think about it, the more I start treating HL21 as a TAS for the simple fact that bits of it were 100% scripted. If anything I prefer (although it clunky) AHK and bhop/duckroll/obbo scripts be the only thing used. While I do like scripted runs some of them, such as HL21, are a bit extreme in the use of them.  
> (probably not on topic but who cares, yay for rants!)

I appreciate that it’s your opinion, but consider that all of the tricks in HL21 are possible without them being 100% scripted. From what I can tell it wouldn’t be feasible to perform them without them being heavily scripted because it wouldn’t be fully optimal, which I’m pretty sure is what the aim of HL21 was - to create a segmented run that was as optimized as much as possible.

> [@Burgmond](#):
>
> So your saying that if a scripted run uses a modified DLL or other files (such as to achieve perfect jumping/duckrolling) they should be counted as a TAS? If so then I forward this decision.

Also consider that Bunnymod Pro/XT and NGHL engine both use modified DLLs, so do you think runs using those should be counted as a TAS? Take those away and the only option you have is the WON version.

---

<div class="post-metadata">

**Author:** ![execut4ble](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/execut4ble/32/14_2.png) [@execut4ble](https://forums.sourceruns.org/u/execut4ble)\
**Post date:** [July 2, 2014, 3:39pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/10 "2014-07-02T15:39:55Z")

</div>

There’s 4554 and 6027 besides WON 😃  
[http://wiki.sourceruns.org/wiki/Game\_versions](http://wiki.sourceruns.org/wiki/Game_versions)

---

<div class="post-metadata">

**Author:** ![YaLTeR](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/yalter/32/553_2.png) [@YaLTeR](https://forums.sourceruns.org/u/YaLTeR)\
**Post date:** [July 2, 2014, 4:15pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/11 "2014-07-02T16:15:42Z")

</div>

The bhop cap.

---

<div class="post-metadata">

**Author:** ![treetoon](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/treetoon/32/41_2.png) [@treetoon](https://forums.sourceruns.org/u/treetoon)\
**Post date:** [July 5, 2014, 12:02am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/12 "2014-07-05T00:02:59Z")

</div>

When I first saw this I thought that this is pretty clear, the point in a scripted run is to take advantage of everything possible in your .cfg files and obviously no plugins or external programs should be used. Plain and simple, use Half-Life and nothing else. While I’m not quite sure about the definition of “no-scripted” runs, I’m assuming (correct me, if I’m wrong/missing something) it’s disallowing alias and commands followed by a semicolon essentially, which is slightly arbitrary when you think about it. Nevertheless, I like both in their own unique way.

After thinking for a few days I ended up realizing I was stuck on this definition mostly, and to me it would make more sense to get rid of this imperfection you have really no control over. While it technically isn’t random if the jumps get timed perfectly, I nor anyone else can do anything about it.

I ended up voting to add both.

---

<div class="post-metadata">

**Author:** ![YaLTeR](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/yalter/32/553_2.png) [@YaLTeR](https://forums.sourceruns.org/u/YaLTeR)\
**Post date:** [July 5, 2014, 11:25am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/13 "2014-07-05T11:25:37Z")

</div>

> [@treetoon](#):
>
> I’m assuming (correct me, if I’m wrong/missing something) it’s disallowing alias and commands followed by a semicolon essentially, which is slightly arbitrary when you think about it.

Scriptless means no console / cfg stuff at all AFAIK. Only what you can do through the options menus and whatnot.

---

<div class="post-metadata">

**Author:** ![treetoon](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/treetoon/32/41_2.png) [@treetoon](https://forums.sourceruns.org/u/treetoon)\
**Post date:** [July 5, 2014, 11:06pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/14 "2014-07-05T23:06:23Z")

</div>

> [@YaLTeR](#):
>
> > [@treetoon](#):
> >
> > I’m assuming (correct me, if I’m wrong/missing something) it’s disallowing alias and commands followed by a semicolon essentially, which is slightly arbitrary when you think about it.
> 
> Scriptless means no console / cfg stuff at all AFAIK. Only what you can do through the options menus and whatnot.

I don’t think binds to specific fps’s exists in the options of official half-life clients tho.

---

<div class="post-metadata">

**Author:** ![YaLTeR](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/yalter/32/553_2.png) [@YaLTeR](https://forums.sourceruns.org/u/YaLTeR)\
**Post date:** [July 7, 2014, 7:56pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/15 "2014-07-07T19:56:23Z")

</div>

I don’t think they are allowed either?

---

<div class="post-metadata">

**Author:** ![treetoon](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/treetoon/32/41_2.png) [@treetoon](https://forums.sourceruns.org/u/treetoon)\
**Post date:** [July 7, 2014, 8:16pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/16 "2014-07-07T20:16:43Z")

</div>

Everyone doing no-scripted runs lower their fps when manipulating NPCs and also during the ladder segment in the test chamber in hl1 AFAIK

---

<div class="post-metadata">

**Author:** ![PJC](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/p/a587f6/32.png) [@PJC](https://forums.sourceruns.org/u/PJC)\
**Post date:** [July 7, 2014, 10:36pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/17 "2014-07-07T22:36:45Z")

</div>

Yep, there are a few exceptions. Lowering framerate is allowed.

---

<div class="post-metadata">

**Author:** ![treetoon](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/treetoon/32/41_2.png) [@treetoon](https://forums.sourceruns.org/u/treetoon)\
**Post date:** [July 8, 2014, 8:44am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/18 "2014-07-08T08:44:22Z")

</div>

If we were to argue anything possible in the console is allowed (obviously without breaking any fundamental values) you could write something like this:  
bind mwheelup “wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait;wait”  
Then set your fps to 15 and scroll one time for every second you’d like to triggerdelay.

I’ve been assuming only  
bind mwheelup “wait”  
is allowed. Are there really no clear rules regarding this matter?

---

<div class="post-metadata">

**Author:** ![YaLTeR](https://b-cdn.sourceruns.org/user_avatar/forums.sourceruns.org/yalter/32/553_2.png) [@YaLTeR](https://forums.sourceruns.org/u/YaLTeR)\
**Post date:** [July 8, 2014, 9:00am UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/19 "2014-07-08T09:00:06Z")

</div>

If we judge by what SDA allows then I’m pretty sure nothing console including the FPS changes is allowed there. But twitch runners use bunnymod anyway so they’ve got some exceptions, I’m not quite sure what is allowed.

---

<div class="post-metadata">

**Author:** ![quadrazid](https://b-cdn.sourceruns.org/letter_avatar_proxy/v4/letter/q/f6c823/32.png) [@quadrazid](https://forums.sourceruns.org/u/quadrazid)\
**Post date:** [July 8, 2014, 3:05pm UTC](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371/20 "2014-07-08T15:05:58Z")

</div>

Yes, coolkid used above 100fps on his steam run (capped bhop) Since it’s possible without moddings. So did I in my BS SS. Can’t see why the fps-rules change between script and no script runs. It’s just a matter of allowing developer mode or not.

“wait” is one of the kind command. Is there any reason to allow it for a scriptless run?

> [@Half-Life segmented in 20 minutes 41 seconds](https://forums.sourceruns.org/t/half-life-segmented-in-20-minutes-41-seconds/2077/301):
>
> (You can make triggerdelays w/o scripts as well. But it’s questionable if binding a button to “wait” would be appropriate for a scriptless run. In CS CZ DS, Secret War, I saved over a minute by lowering the fps and spamming wait with the mwheel. fps\_max 5 and 25 scrolls before hitting the trigger gave me 5 seconds to reposition the loading. This demo was not submitted for said issue.)

For OP:  
I’d allow it for TASing to get consistency and simplicity for the scripts. Not for script-assisted speedruns. As soon as a human touches the controls it’s not perfect anyway. So that makes the extra modding superfluous when you already have superb spam function within the game (I think if you have knowledge about the right fps values, its 100%?).

There is no standard for rules and the normalization for modding and tweaking the games is a thing I don’t like. It’s all just a growing swamp which is why I don’t enjoy runs as much anymore.

[Next page](https://forums.sourceruns.org/t/non-scriptless-runs-tool-usage/2371.md?page=2)
