The Dink Network

Dink RTS tech demo

April 27th 2019, 11:13 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Aren't ya sick of the sloppy, monotonous, inflexible, and exhausting combat system of Dink Smallwood?

Worry no more because your favorite RPG will become an RTS soon!

Sorry, I can't post screenshots yet because I'm currently working on it's scripting. All of the mapping is basic, so a screenshot is unworthy.

I'm working on scripts that make sprites follow dink, or let them stay in place, set a target, activate special abilities, but I need to borrow a lot of scripts from other developers such as the enemy shooting scripts of redink1, and the ability to transfer non player characters,(the allies you train in a certain house in the game), to another screen as seen in DinkCraft. You can also train units but they cost gold, destroy enemy camps and such.

Im always daydreaming on how to make scripts work, then do an experiment about it in the test dmod like trying new stuff and improvisation.

And to mention that "DinkC reference.chm" and "An introduction to DMOD making.pdf" were a BIG help!!

Tech demo won't have a story but will have 1 level of also 1 game mode.

April 27th 2019, 11:20 AM
wizardb.gif
Bluedy
Peasant He/Him Romania bloop rumble
I like Frutti Fresh 
Excited!
April 28th 2019, 03:35 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Don't expect too much. Because I might run out of ideas, luck, and inspiration, but will eventually return sooner or later.

I'm still figuring out some ways on how to make enemies attack your base, which is extremely difficult.

Well, I'll make this my Help Me Thread, where I'll ask about techniques in scripting.
April 30th 2019, 02:40 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
There is a problem in making Dink a real-time strategy- I can't seem to make the enemies attack your base when you leave the screen where your base is. When you leave that screen, EVERYTHING RESETS!! Aarghh! <whacks himself in the head with a rubber toy hammer>
So it might be a TBF (turn based fight) instead.

Well, any ideas to make it real-time?
April 30th 2019, 12:19 PM
peasantmp.gif
Skurn
Peasant He/Him Equatorial Guinea duck bloop
can't flim flam the glim glam 
well you still could have timers on each screen i guess, and randomize for a possible attack each tick. then, it's like "your base is under attack by <random enemy>" or "enemy you pissed off", so it ups a variable and when you get back to your thing, it checks for that variable and spawns some dudes.

so if it's just some random faction that attacks you, could just be a low chance on each screen per 1-3 seconds or something. or if it's one you've been pissing off, it's higher. could even make it higher the further away you are.
April 30th 2019, 12:48 PM
wizardg.gif
LeprochaUn
Peasant He/Him Japan bloop
Responsible for making things not look like ass 
It's going to be really weird and difficult to do an RTS. You'd have to use a lot of global variables and scripts that don't die. Even then it's real iffy.

Turn based is a lot easier to pull off. Also, you have Dinkgon Warrior as a dmod to reference when building the systems, which makes it a whole lot easier than doing an rts that hasn't been done before.
May 1st 2019, 10:08 AM
bonca.gif
Christiaan
Bard They/Them Netherlands
Lazy bum 
RTS is doable but you'll have to do it on one screen. I had a nice system somewhat working way back, but ultimately found it too boring to play to try to make a D-Mod with it.
May 1st 2019, 12:57 PM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
@Skurn

I've also thought of that. Random threats occurring to your base, called randomly by a timer. But I improved mine, it can be countered by training units as base defenses.

But I've already created an improved system for that, which is pretty much based from what you said.

BTW, I've set Dink into a cursor sprite, and stole a script from a dmod that makes him invincible,(I just don't get how it works).

So this is the system:

Globals:
&bdu
&int

You can train a unit in 2 different ways, frontline, or base defender. It depends on the unit on how much base defense power do they contribute. Take note that training units cost gold.

When every time your base (HQ) is attacked, &life decreases. An enemy force is a global called &int, or intruders. So it's a scripted form of attack.

BUT, damage can be prevented by training units as base defenses, which increases a global variable value called &bdu, or base defense units.
&bdu prevents damage taken from randomly called base threats sequences. &bdu values increase every time you train base defenders. As long as you have &bdu, you won't lose some &life. It serves as a defense.

As a matter of fact, nothing is spawned in that "HQ base screen" when base threats are said occurring. So I made the HQ screen unaccessible when "under attack" in order to hide the depressing truth that you really aren't being attacked real-time. So that screen is near to useless crap right now, (well, why did I tell you?).

Example: when you train a base defender, &bdu increases. When indicated that your base is under attack, the &bdu will be subtracted by the value of &int.
The value of &int is random, so you'll depend on luck

Therefore,

&bdu - &int

where &int is the enemy force power, (intruders), while &bdu is the base defense power you have.

No dudes are spawned, just some math and damage.

Sed 2 mutsh

June 1st 2019, 11:04 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Progress: 35%

Some think that im faking this and it's weird, but I really won't give up until I made the very basic foundation of the system. As usual, im still doing experiments and trying out some cranky ideas.

Mentioning them will ruin the surprise.

This experiment thing will be furtherly delayed because school will start this 2nd week of June.
June 1st 2019, 11:31 AM
wizardb.gif
Bluedy
Peasant He/Him Romania bloop rumble
I like Frutti Fresh 
Excited to see where this project goes!
June 1st 2019, 03:45 PM
spike.gif
SlipDink
Peasant He/Him United States bloop rumble
2nd generation. No easy way to be free. 
I find myself quite curious about this effort too.
June 3rd 2019, 01:29 PM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Hey, uh... how do you make touchers hurt the other enemies without hurting the player. I saw boncas target and hit pillbugs but those pillbugs cant hurt the bonca. sp_touch_damage only sets the damage when dink touches them.

//my silly uneducated idea

void td( void )
{

hurt(&current_sprite, 1);
}
//this is called externally by another script that uses this code when it is touched.

The problem is the active sprite seems to take the damage only when dink touches it.

Also, I've tried the "MouseDink dev's demonstration" where i saw that you can control the cursor sprite by the mouse, not by arrow keys.

I just dont get how to make mine like THAT.

Any form of help will be much appreciated. So, any ideas?

BTW, im sooooo busy.
June 5th 2019, 03:43 PM
spike.gif
Not very easily. I think you have to create a missile sprite, and use a loop to make it follow the enemy's x and y coordinates. With sp_brain_parm, you can make it so that the missile doesn't damage the monster itself, but only other sprites.

Also, I've tried the "MouseDink dev's demonstration" where i saw that you can control the cursor sprite by the mouse, not by arrow keys.

Set Dink's brain to 13. I think you can still control Dink by arrows keys, but also with the mouse.
June 10th 2019, 12:50 PM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Thanks for the idea about improvised monster damaging touch, im working on it.

Say, ive set dink's brain to 13 but there were some bad results. Dink, (1) can move around one screen but cant interact with sprites, cant move to the other screens, and unable to pass through hardness. Ya can't even use the Esc button with this mode.

Another question! How to make monster brains 9 and 10 target a specific enemy? (except for 1 and &enemy_sprite) Is there any work-arounds for this thing?

Sorry for the silly questions

July 5th 2019, 11:36 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
Manual save feature included. The saving system in dink rts doesnt require you to use savebot machines, instead you will press key-83 (S), to bring out a choice menu of save slots. Loading a game state is done by the Esc menu.

Say, anybody who is willing to beta test my "scratch release" soon? Because basically, the code and the system was built from scratch and sheer imagination, so its better if the judgement will come from someone else.

July 7th 2019, 03:52 PM
death.gif
RangerLord
Peasant He/Him Hungary bloop
The nation above all 
I'd be interested in testing.
July 28th 2019, 12:54 AM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
I assume this experiment thing will be released as an unfinished work. So it needs both beta testers, and finishers.

Well, its just so basic, you create a guy, put it on your inventory, go to the next screen, bring him out, destroy a goblin house with a brain of 9 and hitpoints of 30, collect gold to make more guys, earn exp to unlock other units, structures and such. But that's just 2/30 of what I made, nothin to brag.
September 20th 2019, 10:10 PM
slayer.gif
Exzcimus
Peasant He/Him Philippines
Change is constant, but Constants do not change. 
The system uses 40 scripts (including start and main scripts), but 17 of them are still experimental.
I keep on using the "external function" and "sp_script" that's why I managed to make 40 scripts. A sprite is meant to change script a lot of times.