Hamumu Games, Inc. Hamumu Games, Inc.
 - Home - Games - Blog - Halloween - About - 
  Scripty Update 11:58 AM -- Tue September 27, 2022  

It's been quiet on the Broken Build Simulator front for a while... So here's your update!

First off, I was on a trip for a week. My first flight since March 2020! Which means of course, without a moment's doubt, that I spent the two weeks following that sick. I thought it wasn't covid (I took MANY tests), but now afterwards, having spent weeks feeling absolutely exhausted for no reason, I am suspicious indeed. I guess it doesn't much matter which it was at this point, but it fuels my desire to never leave my house again which was already at a high 90+% level.

So I have been slow for a while due to that situation. But also, the scripting process! As I implemented scripting for different elements of the game, I just couldn't stop. First it was the skills and abilities, then heroes. Since my illness though, I've added scripting for the game modes, weapons, enemies, bullets, and at this point only buffs remain and I'm going to do them too. Once that's done, I think it's all scripted! The game is currently non-runnable of course, and it has taken many steps backwards over these few weeks, but we're on the uphill climb of that quagmire. Once we're out of it, my theory is that adding new things will be a breeze. I guess we shall see if that's true. It's not going to be like Starcraft where you can make entirely different games in it, as the core mechanics will always be the same, but you'll be able to do a lot with those mechanics.

I have no fancy artwork or videos to show you because the game is not functional. If you're a scripty programmy designy person, maybe you'd enjoy this 'screenshot' of the script for the bullets that the Infestor weapon shoots. I'm not actually sure this script works, because the game hasn't been running since I wrote it, but it's the general idea at least. Most bullets are a lot simpler - this one does some wacky stuff.

Bulletdef:
	"Insect",
	8,8,	; width and height
	3,3,	; visheight, visOffY
	16,16,	; sprite size
	Img_Bullets, ; sprite sheet
	0,0,	; top-left of sprites
	TeamGood,	; team
	BehaviorProjectile,	; basic behavior, just zooms forward and can hit enemies
	3,40,	; base damage and speed
	120	; base range

AnimDef: Attack1(6,1,0 7,1,0)
	End

On_Init:
	Set(Bullet.DZ,2)
	Set(Bullet.Gravity,0)
	Set(Bullet.Bounce,0)
	Set(Bullet.Z,0)
	End

On_Update:
	If(Bullet.Z>4.5)
		Sub(Bullet.DZ,3)
		If(Bullet.Z>5)
			Set(Bullet.Z,5)
		EndIf
	Else
		If(Bullet.Z<3.5)
			Add(Bullet.DZ,3)
			If(Bullet.Z<2)
				If(Bullet.DZ<0)
					Set(Bullet.DZ,0)
				EndIf
			EndIf
		EndIf
	EndIf
	; me->speed = weaponflightspeed-weaponflightspeed*(timer/weaponrange)
	; we're slowing down over the course of our time (timer counts up from 0 to weaponrange)
	Set(T1,Bullet.Timer)
	Mul(T1,Weapon.FlightSpeed)
	Div(T1,Weapon.Range)
	Set(Bullet.Speed,Weapon.FlightSpeed)
	Sub(Bullet.Speed,T1)
	If(Bullet.Speed<=0)
		DeleteSelf
	EndIf
	; accuracy of 100 has no randomizing, accuracy of 0 randomizes by 1 degree per frame
	Set(T1,100)
	Sub(T1,Weapon.Accuracy)
	Mul(T1,0.01)
	Rand(T2,0,T1)
	Add(Bullet.dAngle,T2)
	End

On_HitEnemy:
	; special2 is the dot damage, special1 is the dot duration
	Div(Bullet.DX,8)
	Div(Bullet.DY,8)
	PushTarget(Bullet.DX,Bullet.DY)
	BuffTarget("Infested",Weapon.Special2,0,Weapon.Special1)
	HurtTarget(Bullet.Damage,Weapon.CritChance,Weapon.CritDamage)
	Die
	End

On_Death:
	ParticleEvent(1,Bullet.X,Bullet.Y,60,0)
	End
Comment on this entry...Back to top!
Copyright 2021-2023, Hamumu Games Inc.