• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.
  • We have made minor adjustments to how the search bar works on ResetEra. You can read about the changes here.
Status
Not open for further replies.

Qwark

Member
Oct 27, 2017
8,030
Second #screenshotSaturday. Improved battle system (enemies can die now), added item drops and basic inventory system. I have next week off of work so hoping to make a lot of progress :)

 
May 23, 2019
509
cyberspace
Hello, this time i'm here because I want to know why using Loop (for,while,foreach) when You can use the invoke repeating method/function?
I want to know the pro and cons of Loop and Invoke repeating method/function, and thank you for taking your time to reply :)
I'm using UnityEngine and Csharp.

P.s I think I'm almost done with my first ever game :D
 

Kazooie

Member
Jul 17, 2019
5,029
Hello, this time i'm here because I want to know why using Loop (for,while,foreach) when You can use the invoke repeating method/function?
I want to know the pro and cons of Loop and Invoke repeating method/function, and thank you for taking your time to reply :)
I'm using UnityEngine and Csharp.

P.s I think I'm almost done with my first ever game :D
I am not quite sure I properly understand your question, you want to replace for, while and foreach loops with recursion - i.e. a function calling itself? Because without that I do not see a way to replace a loop (that does not have the number of calls hard coded) by function calls. So in case you do mean replacing loops by recursion: Recursion comes with a certain overhead for the stack, because whenever you call a function, the runtime environment needs to remember "where you came from". This means that recursion is a bit slower (though that usually is not too important) and is limited in terms of how many iterations you can compute, because of the limited stack size. Recursion often yields elegant solutions, that are very compact though, so it is not all bad. Usually, it is a good practice to come up with a recursive solution and then to build a more efficient iterative solution based on that.
 
May 23, 2019
509
cyberspace
I am not quite sure I properly understand your question, you want to replace for, while and foreach loops with recursion - i.e. a function calling itself? Because without that I do not see a way to replace a loop (that does not have the number of calls hard coded) by function calls. So in case you do mean replacing loops by recursion: Recursion comes with a certain overhead for the stack, because whenever you call a function, the runtime environment needs to remember "where you came from". This means that recursion is a bit slower (though that usually is not too important) and is limited in terms of how many iterations you can compute, because of the limited stack size. Recursion often yields elegant solutions, that are very compact though, so it is not all bad. Usually, it is a good practice to come up with a recursive solution and then to build a more efficient iterative solution based on that.
I'm trying to understand the difference between loops and invokerepeat, I have no idea about this recursion function.
Is recursion the same function as invoke?
 
Sep 14, 2019
3,030
I'm surprised there haven't been any RPG Maker sales in a while.

They used to have those bundles every few months, I think.

Still debating whether to make my game into an old-school visual novel or more like the Corpse Party games.
 

Kazooie

Member
Jul 17, 2019
5,029
I'm trying to understand the difference between loops and invokerepeat, I have no idea about this recursion function.
Is recursion the same function as invoke?
A loop will determine the value you need in the same frame / update function, invokerepeat (sorry, I did not get you were talking about this Unity specific construct) will call a method at a fixed time interval, repeatedly. They both have vastly different use cases. If you want to sum up elements in an array, you will not use invokerepeat. If you want to define continued behaviour over an extended period of time, then a loop does not make sense, because it will all execute within the same frame. Use a while-loop to move forward a projectile and you end up with a projectile being in its destination point within the same frame, which is hardly usable in a game.
 
May 23, 2019
509
cyberspace
A loop will determine the value you need in the same frame / update function, invokerepeat (sorry, I did not get you were talking about this Unity specific construct) will call a method at a fixed time interval, repeatedly. They both have vastly different use cases. If you want to sum up elements in an array, you will not use invokerepeat. If you want to define continued behaviour over an extended period of time, then a loop does not make sense, because it will all execute within the same frame. Use a while-loop to move forward a projectile and you end up with a projectile being in its destination point within the same frame, which is hardly usable in a game.
Thanks for the explaination :D
 
OP
OP
Popstar

Popstar

Member
Oct 25, 2017
878
I'm surprised there haven't been any RPG Maker sales in a while.

They used to have those bundles every few months, I think.

Still debating whether to make my game into an old-school visual novel or more like the Corpse Party games.
uh... https://www.humblebundle.com/software/rpg-maker-returns-software

hIqhJmm.png
 

Kazooie

Member
Jul 17, 2019
5,029
I have got a small issue with Unity's shadow system. The shadow distance only takes x- and z-axis into account, but not y-axis. This is pretty annoying, because I have used positioning for special areas that that one can teleport to (via "doors"), and now if an area is 2000 above another area, the shadows from the upper area still affect the lower area. This of course also has the side effect of causing additional meshes to be computed, but "luckily", I did not notice the shadow issue before today and optimised everything under the assumption that these objects are automatically culled by camera (so performance is not affected).

I could solve this via a script that disables the renderer manually, of course, but before I do that I wanted to ask if someone knows a more elegant / in-built solution to limit from how far above shadows can be generated.

EDIT: While I would still be interested in a more elegant solution in principle, I have now solved the issue by programming a script that turns renderers or shadows (depending on the level element) off based on the user position.
 
Last edited:
May 23, 2019
509
cyberspace
Hi all, since I think i'm done with the coding part for my 1st project,
now i'm into modelling and animating my character and enemy, i'm using blender and my character is very very low poly (Cube after Cube) I wanted to know how to animate it what do you raccomend using Riggs (bones) or just move everything individually Cube after cube.

p.s i'm trying to animate my low poly character like the PSX era animation.
xcIxFQE.png
 

Jintor

Saw the truth behind the copied door
Member
Oct 25, 2017
32,427
I'm trying to concept out how to do the pause effect for super moves (example)

I already have a pause effect that I'm reusing for hitstop that basically just deactivates everything except itself, screenshots the screen for x seconds until a timer countsdown, and then reactivates everything. But that won't work for this since I want to pile on visual FX and so on during the super activation time.

Was thinking of... some kind of state in the state machine for every character where it pauses on the current frame of animation, stores all current movement information (to retain physics when it reactivates), sets hspd/vspd to 0 and deactivates gravity/friction, exists in that for x seconds, then dumps all the movement info back in the proper vars when the timer expires?

Does that make sense?

Would also be able to add a shaking effect on hits which would also be nice, if this is reusable.
 

dannymate

Member
Oct 26, 2017
647
I have got a small issue with Unity's shadow system. The shadow distance only takes x- and z-axis into account, but not y-axis. This is pretty annoying, because I have used positioning for special areas that that one can teleport to (via "doors"), and now if an area is 2000 above another area, the shadows from the upper area still affect the lower area. This of course also has the side effect of causing additional meshes to be computed, but "luckily", I did not notice the shadow issue before today and optimised everything under the assumption that these objects are automatically culled by camera (so performance is not affected).

I could solve this via a script that disables the renderer manually, of course, but before I do that I wanted to ask if someone knows a more elegant / in-built solution to limit from how far above shadows can be generated.

I don't have much experience in this area but I can point in a possible direction not sure how much it'll help. The first thing that came into my mind was the Scriptable Render Pipeline. My knowledge on SRP is basically this video. Here's a couple of things i found not sure how much help they'll be, 1, 2. If you're not already you'll need to probably switch to the LWRP or HDRP. Should be explained in the first video. Let me know how it goes!

Edit: 2 - Newer article.
 

Weltall Zero

Game Developer
Banned
Oct 26, 2017
19,343
Madrid
I'm trying to concept out how to do the pause effect for super moves (example)

I already have a pause effect that I'm reusing for hitstop that basically just deactivates everything except itself, screenshots the screen for x seconds until a timer countsdown, and then reactivates everything. But that won't work for this since I want to pile on visual FX and so on during the super activation time.

Was thinking of... some kind of state in the state machine for every character where it pauses on the current frame of animation, stores all current movement information (to retain physics when it reactivates), sets hspd/vspd to 0 and deactivates gravity/friction, exists in that for x seconds, then dumps all the movement info back in the proper vars when the timer expires?

Does that make sense?

Would also be able to add a shaking effect on hits which would also be nice, if this is reusable.

One of the first things I learned when adding hitstop to my game is: don't pause the whole game, pause only the attacker and the receiver. If you pause everything it just seems like the game is dropping frames.

After a lot of experimentation (and frame-by-framing other games), the formula I use is to pause both the attacker and receiver / victim for 0.2 seconds, making the receiver (but not the attacker) vibrate more strongly at first, then the vibration distance (amplitude) gradually reduces during these 0.2 seconds, until it becomes zero and stops vibrating. For the vibration itself, just offset the sprite left and right that distance, alternatingly, each frame (it is important, if you can, to only offset the sprite: if you offset the colliders, it may generate collisions if it's touching something, including the attack hitbox that started the whole thing). This is exactly, to the frame, what Street Fighter IV does, and it works very well. Street Fighter V vibrates the whole screen instead (screen shake), but I use that for explosions and such.
 

Jintor

Saw the truth behind the copied door
Member
Oct 25, 2017
32,427
Sure, but what's your practice for that - do you flip the object to a separate state that is the 'hitstop' state while retaining all the current vars, or is there some kind of step code override so you can do it in whatever state you're already in?

maybe it is just an 'if (hitstop) [do hitstop stuff; exit]' in the step event... hmmm
 

Kazooie

Member
Jul 17, 2019
5,029
I don't have much experience in this area but I can point in a possible direction not sure how much it'll help. The first thing that came into my mind was the Scriptable Render Pipeline. My knowledge on SRP is basically this video. Here's a couple of things i found not sure how much help they'll be, 1, 2. If you're not already you'll need to probably switch to the LWRP or HDRP. Should be explained in the first video. Let me know how it goes!

Edit: 2 - Newer article.
Thank you for the link, it is indeed interesting, but I cannot use that, because I am on an older Unity version (developing for Wii U), older than the dynamic rendering pipe line feature in Unity.
 

Weltall Zero

Game Developer
Banned
Oct 26, 2017
19,343
Madrid
Sure, but what's your practice for that - do you flip the object to a separate state that is the 'hitstop' state while retaining all the current vars, or is there some kind of step code override so you can do it in whatever state you're already in?

maybe it is just an 'if (hitstop) [do hitstop stuff; exit]' in the step event... hmmm

I use Unity, so I can't help with the specific implementation in GameMaker, but in short, each of my entities (enemies or players) have a number of state flags (multiple states can be active at once). One of these flags is AttackerHitstop, and another is DefenderHitstop. When I set either of them, I store the actor's old velocity, zero it horizontally and vertically (*), and start vibrating if it's the defender. Until hitstop ends, gravity and normal movement are suspended, because both of them check for entity states that prevent them (hitstop prevents both of them, but e.g. many status effects like frozen or petrified only prevent movement). Once the 0.2 seconds are up, I restore the old velocity, and clear the state flags.

(*) - When zeroing velocity, if the entity is grounded, then I leave Y speed as it is rather than zero it. This is important because if they're on a platform that moves vertically, it looks better if they move with the platform than if they stay airborne for a split second then drop down.

I'm not sure of how much use this will be since again it's Unity, but here's my hitstop coroutine. If there's anything you need to know, please ask.

Code:
    IEnumerator HitStopCoroutine (bool isAttacker, float duration) {

        EntityStateEnum hitStopState = isAttacker 
            ? EntityStateEnum.AttackerHitStop
            : EntityStateEnum.DefenderHitStop;

        yield return new WaitForEndOfFrame ();
        if (!GetState ().IsState (hitStopState)) {
            // Set hit stop state.
            SetState (hitStopState, true);

            bool grounded = IsGrounded ();

            Vector2 oldVelocity = Vector2.zero;
            if (_rigidbody != null) {
                // Store velocity to be able to restore it later.
                oldVelocity = GetVelocity ();
                Vector2 newVelocity = oldVelocity;
                // Freeze the rigidbody horizontally.
                newVelocity.x = 0f;
                if (!grounded) {
                    // In midair: also freeze vertically. 
                    newVelocity.y = 0f;
                    // In midair: remove gravity.
                    _rigidbody.isKinematic = true;
                }
                // Apply frozen velocity.
                SetVelocity (newVelocity);
            }

            // Stop animation (important especially if it's 
            // the attacker).
            _animator.speed = 0f;
            if (_animationController != null) {
                _animationController.PushPause ();
            }

            // If this is the target, and it's not attached, vibrate.
            // Otherwise just freeze for the duration.
            if (!isAttacker && !GetState ().IsState (EntityStateEnum.Clung)) {
                yield return VibrateCoroutine (
                    duration,
                    DamageConstants.HitStopVibrationMaxDistance, 
                    DamageConstants.HitStopVibrationPeriod);
            }
            else {
                yield return new WaitForSeconds (duration);
            }

            // Remove hit stop state.
            SetState (hitStopState, false);
            // Restore animator speed.
            _animator.speed = GetSpeedFactor ();
            // Restore normal physics.
            RecalculatePhysics ();
            
            // Restore original velocity.
            if (grounded) {
                // Grounded: don't actually restore old vertical 
                // speed (preserve the current speed).
                oldVelocity.y = GetVelocity ().y;
            }
            SetVelocity (oldVelocity);

            // Resume ongoing animation (particularly important 
            // if this is the attacker).
            if (_animationController != null) {
                _animationController.PopPause ();
            }
        }
    }
 

Jintor

Saw the truth behind the copied door
Member
Oct 25, 2017
32,427
Super helpful as always mate - I think I just needed to think through it. Main problem for me is going to be the gravity/friction application but I can probably just tie it to the hitstop toggle
 

Mike Armbrust

Member
Oct 25, 2017
528


I'm not an artist but I've been putting some work in towards making my procedural world look better. I'm also in the process of redesigning how the terrain is generated. Switched it to a system that gives artists more control instead of being math focused. Someday soon I'll probably move it over to the GPU as well.
 

CptDrunkBear

Member
Jan 15, 2019
62
I'm a little late for screenshot saturday, but still working on that gothic retro shooter :D Pretty close to getting it feature-complete so I can start working on maps, enemies, and bosses. Would it be ok to ask about playtesting in this thread?

big4cNl.png
 

Alic

Member
Oct 25, 2017
59
I had the concept of the game (Flying around with a Jetpack, trying not to crash into things) and I knew I wanted a title that was either a little bit funny or a little bit cute, and I also knew I wanted to have a title before properly got started. I felt that the titles of "Safety not guaranteed" (film) and "No Time to Explain" (game)were pretty good as they conveyed the tone of the media purely through the title, and I wanted to replicate that for my own game.

I wanted people to know that the game was light-hearted, a little bit silly and preferably quite memorable. As far as I can remember, I didn't actually have many other ideas as I came to it fairly quickly after that and I had a kind-of "Yep, that's the one" moment. It also helped me work on a little elevator-pitch with the title being used almost like a punchline:

It's a 2D precision-action game where you play as a test-pilot for a prototype jet-pack, flying through a futuristic city whilst trying not to crash into buildings, traffic and pretty much everything else in your way. It's called "Please Wear a Helmet"!

I tried that out on a couple of people around the studio where I was working at the time and it made them chuckle, so I felt like it was a pretty good choice!

I wasn't really able to settle on the name until I had decided my setting and a very loose plot/narrative. Maybe once you've done that it'll give you more to work on? Of course, the name may just come to you at some point when you least expect it. What is your game going to be about?

Sorry I missed this before! Had a weird week. Thanks for such a detailed response, Charles.

This is how I picture getting my game's name, but I think I haven't focused enough on the overall plot to distill it into a theme yet, I just have moments at this point. The story (I think) is going to be about a girl who is born to inherit a power that's important to her people, but also with a childhood injury/condition that makes it impossible for her to use that power. So she feels like a failed generation. The story is about finding a path through the forest of your own limits. And the impossibility of communicating that experience to others. And there are other characters too. And I also don't know what it's about yet :(

I think I need to lay off the art a bit at some point and build more discipline around sketching story bits. Then hopefully it will come to me.

Please Wear a Helmet is pretty catchy, I would download that :)
 
Last edited:

Alic

Member
Oct 25, 2017
59
I have got a small issue with Unity's shadow system. The shadow distance only takes x- and z-axis into account, but not y-axis. This is pretty annoying, because I have used positioning for special areas that that one can teleport to (via "doors"), and now if an area is 2000 above another area, the shadows from the upper area still affect the lower area. This of course also has the side effect of causing additional meshes to be computed, but "luckily", I did not notice the shadow issue before today and optimised everything under the assumption that these objects are automatically culled by camera (so performance is not affected).

I could solve this via a script that disables the renderer manually, of course, but before I do that I wanted to ask if someone knows a more elegant / in-built solution to limit from how far above shadows can be generated.

EDIT: While I would still be interested in a more elegant solution in principle, I have now solved the issue by programming a script that turns renderers or shadows (depending on the level element) off based on the user position.

I'm not sure I've got the whole picture, but is having those special areas enabled when they're off screen important at all? Are there side effects in your scripts to disabling them? It sounds like ideal behavior could be just turning them on when the player teleports to them, rather than messing around with the notoriously hard-coded shadow system. If you get unwanted behavior from disabling objects, just disabling renderers does seem like the way to go.


On my own project, I've moved to another scale on the art side, working on a world map:



The light in the wheat is definitely WIP but it's started to do what I want, with the little wind highlights that appear and disappear. Is this relaxing or too busy?
 
Last edited:

Kazooie

Member
Jul 17, 2019
5,029
I'm not sure I've got the whole picture, but is having those special areas enabled when they're off screen important at all? Are there side effects in your scripts to disabling them? It sounds like ideal behavior could be just turning them on when the player teleports to them, rather than messing around with the notoriously hard-coded shadow system. If you get unwanted behavior from disabling objects, just disabling renderers does seem like the way to go.
In this particular instance, yes, just fully disabling the other areas is not possible, because there is some synchronisation going on. It is a level with three copies of the same level in different sizes, where some puzzles require synchronisation. The synchronisation could be solved another way, of course, but completely changing how the puzzle is programmed would not be a good idea at this stage anymore. Disabling renderers (and on the very few objects where they need to remain active, the shadow functionality) has worked fine though. I still do not understand what the benefit is in allowing shadows from arbitrary height, it's neither natural, nor practical.
 

Alic

Member
Oct 25, 2017
59
In this particular instance, yes, just fully disabling the other areas is not possible, because there is some synchronisation going on. It is a level with three copies of the same level in different sizes, where some puzzles require synchronisation. The synchronisation could be solved another way, of course, but completely changing how the puzzle is programmed would not be a good idea at this stage anymore. Disabling renderers (and on the very few objects where they need to remain active, the shadow functionality) has worked fine though. I still do not understand what the benefit is in allowing shadows from arbitrary height, it's neither natural, nor practical.

Yeah, thought it might be something like that. You're doing it the easiest and best way, I think. Definitely easier to toggle something on/off than to mess with the internals of Unity's shadow system. (I don't know why there's no limit either, because this means during the shadow casting pass Unity was rendering a bunch of your way off screen geometry. I know they have a renderer bounds check that can affect shadows, not sure when it comes into play.)
 

JeffG

Member
Oct 27, 2017
858
Edmonton, Alberta
In this particular instance, yes, just fully disabling the other areas is not possible, because there is some synchronisation going on. It is a level with three copies of the same level in different sizes, where some puzzles require synchronisation. The synchronisation could be solved another way, of course, but completely changing how the puzzle is programmed would not be a good idea at this stage anymore. Disabling renderers (and on the very few objects where they need to remain active, the shadow functionality) has worked fine though. I still do not understand what the benefit is in allowing shadows from arbitrary height, it's neither natural, nor practical.
Can you stagger them horizontally instead of vertically?
 

Kazooie

Member
Jul 17, 2019
5,029
Can you stagger them horizontally instead of vertically?
Yes, that would have been an option as well, but it is limited to at most nine, rather than up to 27 areas - and I have another level where that would not be sufficient - and also, in this specific case, the areas are built in two ways: One part is automated cloning, and another is that some objects specific to the respective area. So I would have to compute new coordinates for all the objects that placed manually (grouping of course helps) and I would lose a lot of testing progress. The solution I have now used is probably more practical, because it is only a minor change from in programming and actually no change at all in scene set-up. The timing until 3rd of November is tight, so this is also a relevant consideration.
 
May 23, 2019
509
cyberspace
Hello, I'm here because I want to have a button for the mainscreen to load the first level, but I don't know where to search, everything I found is just obsolete functions that have been updated and I don't know where to find the updated functions, for example the Application.LoadLevel(string) is obsolete :(
 

Kazooie

Member
Jul 17, 2019
5,029
Hello, I'm here because I want to have a button for the mainscreen to load the first level, but I don't know where to search, everything I found is just obsolete functions that have been updated and I don't know where to find the updated functions, for example the Application.LoadLevel(string) is obsolete :(
UnityEngine.SceneManagement.SceneManager.LoadScene(<name of scene>);
 

Weltall Zero

Game Developer
Banned
Oct 26, 2017
19,343
Madrid
May 23, 2019
509
cyberspace
Googling the function game me this:

This is the latest version of the documentation, although you can select previous versions (in case you're using, say, Unity 2018 like I am) with the top left dropdown.
Thanks, I'm using Unity 2019.
How can I make a button call the scene?
like "click here to start a new game" and when I click the button it will load the first scene (level01), I want to know how I can implement SceneManagement with a Button UI.
There's OnClick() but I don't know how it works.
 

AfterCoffee

Member
Feb 18, 2019
118
Just looked into unitys job system. Cant believe i have waited with that. Seems like a easy way to get your game multithreaded =)
 

Santini

Member
Oct 25, 2017
1,617
KV331 Audio is giving away SynthMaster Player for free from now until October 31.

Compared to their other instruments, SynthMaster Player focuses on those who'd rather use presets instead of designing their own sounds. If you're someone that regularly makes their own ensembles in Reaktor and disdains presets, this might not be for you. While there are some parameters you can edit, nothing is exposed as it would be in a typical synthesizer.

This is the regular $29 version of SynthMaster Player that comes with 1800 factory presets instead of the 550 of the "SynthMaster Player FREE" version. This also gives you the option to upgrade to SynthMaster and/or SynthMaster One at a discount if you want to. I feel that many of the included sounds (that I've tried so far) are good and usable, but YMMV of course.

Posting this here as SynthMaster Player comes with quite an assortment of sound effects as well as arpeggios/sequences that can possibly be used somewhere in your game production. It's something I leaned on for years back when doing game dev. Find something useful, adjust some parameters, export it, and move on to the next task on your list.

BTW, being a VSTi, this isn't a standalone program and does requires a DAW to use. If you don't have one, check out Reaper or Tracktion T7.
 

Mike Armbrust

Member
Oct 25, 2017
528


Also I put in a dorky human powered car to make sure my terrain system normals are working as good as they need to.




Obviously my medieval RPG will not have cars so I won't bother giving it good handling, but it makes me really look forward to adding horses and wagons. I think I want to use "car game physics" for players as well. Normally players are glued to the ground unless they jump or go off a cliff (stairs are the big example I can think of where this is important) but I want to experiment with real world physics. Could be problematic though when I eventually add sailing.
 

Mengy

Member
Oct 25, 2017
5,405
KV331 Audio is giving away SynthMaster Player for free from now until October 31.

....

BTW, being a VSTi, this isn't a standalone program and does requires a DAW to use. If you don't have one, check out Reaper or Tracktion T7.

Thanks for that. I've only dabbled in music creation for my games so far but soon I'm going to have to start learning and experimenting with it soon.

Anyone know a good free DAW which allows PC keyboard control? I don't own a MIDI keyboard, nor do I want to spend the money on one for my "hobby" game development. :)
 

Santini

Member
Oct 25, 2017
1,617
Thanks for that. I've only dabbled in music creation for my games so far but soon I'm going to have to start learning and experimenting with it soon.

Anyone know a good free DAW which allows PC keyboard control? I don't own a MIDI keyboard, nor do I want to spend the money on one for my "hobby" game development. :)

I don't know if other free DAWs out there have virtual MIDI keyboard functionality, which is why I listed Reaper and Tracktion T7. =)

While Reaper isn't free to own, it is free to try, and does come with that function built in.

Tracktion T7, which is 100% completely free, has this as well. Both require some set up on your part.

Here are YouTube videos for both of these in action:







Here's a link to other free DAWs for various operating systems via the Bedroom Producers blog. Good luck!
 

Ho_su

Member
Oct 28, 2017
62
El Salvador
Thank you for all the effort to make this thread! It help a lot to

I decided to make video games as a Hobby and a second income. I hope to someday be a professional designer, but it will be hard for me from the place i live because is pour country (El Salvador), but not impossible :D, there are like 4 small company but i want to practice and before go to them.

Anyway, hope to give contribution with the community, but before i better go to hit my self with the head to the wall of programing and make dummys games just for fun/training :D
 

Mengy

Member
Oct 25, 2017
5,405
I don't know if other free DAWs out there have virtual MIDI keyboard functionality, which is why I listed Reaper and Tracktion T7. =)

While Reaper isn't free to own, it is free to try, and does come with that function built in.

Tracktion T7, which is 100% completely free, has this as well. Both require some set up on your part.

Here are YouTube videos for both of these in action:







Here's a link to other free DAWs for various operating systems via the Bedroom Producers blog. Good luck!


Well I just spent my entire night playing around with Tracktion T7. Got a few VST plugins for it and experimented a lot, there's a ton to learn though, wowza! I think it should do nicely though, seems pretty powerful, especially once I learn how to use it better.

Thanks Santini, this will keep me busy for awhile....
 

Dave.

Member
Oct 27, 2017
6,152
KV331 Audio is giving away SynthMaster Player for free from now until October 31.

Compared to their other instruments, SynthMaster Player focuses on those who'd rather use presets instead of designing their own sounds. If you're someone that regularly makes their own ensembles in Reaktor and disdains presets, this might not be for you. While there are some parameters you can edit, nothing is exposed as it would be in a typical synthesizer.

This is the regular $29 version of SynthMaster Player that comes with 1800 factory presets instead of the 550 of the "SynthMaster Player FREE" version. This also gives you the option to upgrade to SynthMaster and/or SynthMaster One at a discount if you want to. I feel that many of the included sounds (that I've tried so far) are good and usable, but YMMV of course.

Posting this here as SynthMaster Player comes with quite an assortment of sound effects as well as arpeggios/sequences that can possibly be used somewhere in your game production. It's something I leaned on for years back when doing game dev. Find something useful, adjust some parameters, export it, and move on to the next task on your list.

BTW, being a VSTi, this isn't a standalone program and does requires a DAW to use. If you don't have one, check out Reaper or Tracktion T7.

Thanks!
 

Raonak

Banned
Oct 29, 2017
2,170
Some Screenshot Saturday action.

igzEQ29.gif


a demo of some steath, some combat in DOT Debug

Sure, but what's your practice for that - do you flip the object to a separate state that is the 'hitstop' state while retaining all the current vars, or is there some kind of step code override so you can do it in whatever state you're already in?

maybe it is just an 'if (hitstop) [do hitstop stuff; exit]' in the step event... hmmm

How i do it is that all my interactive objects have states which are all processed in the step event.

state = "idle" -> standing still
state = "move" -> movement logic
state = "stun" -> set image_speed to 0, no movement, etc.

in either case, if you're using the built in speed/gravity/friction systems, you're gonna have to store the variables.
 
Last edited:

Jintor

Saw the truth behind the copied door
Member
Oct 25, 2017
32,427
god, it really bothers me that vast swathes of the gamedev threads are stuck back in the Sunken Place :<
 
Status
Not open for further replies.