Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - RegalPrime

Pages: [1] 2 3
1
Been kinda away from the engine for a while doing other things but I will try to give you some insight.

When I was building this part, sadly there is no easy way to calculate "what is ground / wall / ceiling" easily.
Min penetration for penalty (MPP) is how fat the colliders are. Remember this is for every collider in the game. So if you had a MPP of 1 pixel (0.01), then two object's colliders are touching if they are 2 pixels apart (even 2 colliders right next to each other are still considered touching). In order for something to be NEXT TO but not touching, you need to be 2.00001 pixels part for the objects in this case.

Imagine a box 32x32 pixels. "Behind" this box is a 32x32 pixel "deadly object." I need to be sure the guy can stand on the box without being instantly killed by the deadly object of the same size.


Here are the ingame settings for the guy.
To translate the below numbers into pixels you x100

Min penetration for penalty (MPP) - Is set in the physics 2d menu

ColliderBuffer - Is set in the actual script for the guy. Either "PlatformerCharacter2D_Pixel" or "PlatformerCharacter2D_Physics_Prechecks" at the top of the script. It will look something like.
"private float ColliderBuffer   = 0.011f;   // Closest distance you can get between two colliders"

The ColliderBuffer is used in the scripts to deal with when the character gets close to a solid object in order for him to move the correct shortened distance to that solid object (ie you dont want to move at the full speed when you are REALLY close to a solid object). In the example of the box and deadly object, there were times walking across such an example was fine, but when you jump and landed, the character would die due to physics, very slightly, clipping him into the deadly zone (this is how physics works and what the MPP buffer is used for).

Physics Version - "PlatformerCharacter2D_Physics_Prechecks"
Min penetration for penalty - 0.004f
ColliderBuffer - 0.011f

So, why the MPP value of 0.004f ?? Physics based movements need at least some buffer in order to calculate their physics stuff. This is the lowest tested value I was able to put it without odd things happening. So the buffer we need would be 0.004 * 2 + 0.001 = 0.009f.  If you want you could change the collider buffer to that value to lessen the chance of clipping. Why the value of 0.011f, I really dont remember, but I figured it was the best after testing and I left it at that. This was tested a few Unity versions ago so you never know how things might have changed. Remember that 0.01f is actually one pixel (quite the buffer) between objects.

Feel free to mess with both the MPP and Collider buffer values (always remember what the default values are though). Also, watch what happens when you lower the MPP near 0 (the physics version will start acting odd at times). Always make sure the ColliderBuffer is at least 2xMPP + 0.0001 though.


Pixel Version - "PlatformerCharacter2D_Pixel"
Min penetration for penalty -  0.0001f
ColliderBuffer - 0.0004f

0.0001f * 2 + 0.0001 = 0.0003f  (I used 0.0004 but the difference is almost nothing)
After all the explanation above you can see the pixel values are extremely small comparatively. "Physics" in this version are calculated via transforms in the script and not by Unity thus I have more control. Things are a bit more stable using this version.

You can always use the Pixel guy version for better accuracy and stability, but you will lose the ability to climb slopes. All you have to do is add the pixel version to the spawner and set the correct MPP (I believe it warns you in the editor if you didnt change the MPP value.


Finally there is one more value you can mess with in "CalculateChecks.cs"
This script deals with checking distance to solid objects (wall / ceiling / ground) and is used by any other script that needs it (even the AI).
"private float ColliderIndent = 0.009f;      // The slight indent of AoE checks to prevent false positives (if needed)"

This was put into the script many Unity versions ago just in case something I needed it (this was previous to being able to change the MPP). As you can see from the comment it deals with false positives. To tell you the truth, I dont know what the "correct" value for this should even be. I am not even sure anymore what making it 0 would do. Feel free to change it to see how it effects things (values between 0.000f - 0.050f).

These are the top few things that you can mess with that would help deal with this issue.
Hopefully you understand what certain values are and how they effect the engine.

Sorry for the late reply.

2
Working on something a few days ago and I noticed I had a main prefab messed up.

The prefab 'Entire Room Setup', 'Entire Room Setup - Alt', and 'PlayerSpawnController' have the wrong guy prefab attached to it (GuyCharacterPrefab_Physics_aTEST). This means a test version of the guy prefab will spawn unless you change it to the 'GuyCharacterPrefab_Physics_Prechecks' prefab or the 'GuyCharacterPrefab_Pixel' version.
- In short, the prefab would spawn the wrong guy unless you changed it yourself.

https://www.mediafire.com/download/kj9lknrls7pl86w/RegalPrime+-+UnityEngine+v1.4.1.zip
- Spawns the 'GuyCharacterPrefab_Physics_Prechecks' guy as the default

I thought it was important enough to change this and re-release the engine. If you know what is going on in the engine you can just change the prefab yourself and not re-download it.

Overall I have been a bit lazy on doing stuff for this engine since the last release mostly because I hit a wall on what I should do. Finally figured I would work on dealing with larger based maps (multi-screens) and see where that will take me. Possible hub based maps as well.

3
New engine update + using the new Unity editor
There was only a few things that needed to be fixed when updating to the newest version of unity (just one script thing I had to change)

An interesting thing that I looked at but did not do for this downloaded version. I found I might be able to delete certain sub-folders (the entire Library folder?) of this engine and Unity will recompile them when it loads up the engine. This would cut back on the download size (72.6m -> 44.6m), but since the overall size is not that high I did not worry about it this time around. I will do some testing and post back later.


RegalPrime - UnityEngine v1.4 - 8-8-15 - Created in Unity 5.1.2f1 Personal
https://www.mediafire.com/download/hs31q0ou4r6hu17/RegalPrime+-+UnityEngine+v1.4.zip

Major stuff
New animation controller for the Guy. It uses the new things put in with Unity 5
- Looks and works better than before (hopefully everything is working ok)

Complete rewrite of all the 2d controllers for the guy (Was a complete mess and it needed to be done for a while)
3 new prefabs for the guy character
- Physics (no prechecks). This version exsists but should not be used. He will die from deadly objects slightly inside blocks.
- Physics with prechecks. Uses phyiscs forces to move the guy and uses preventive checks to deal with ground / wall / ceilings
- Pixel. This version using transforms to move the guy and also uses the prechecks
It shouldn't of changed much how the guy actually moves, but it allows me to change things more easily if I find out something new.
The script will give you a warning if you have the wrong editor settings for the Guy prefab's 'min penetration for penalty' value and tell you how to change it and to what value

New machine parent class / functions
- Start_Machine
- Stop_Machine
- Reset_Machine
- Reverse_Machine
- SpeedUp_Machine
- SlowDown_Machine
- Set_SpeedMultiplier

The following were updated / rewritten to be better scripted and contain the new machine functions (their parent class is Machine).
- Spike Chopper
- Spike Treadmill
- Rotate Forever
- Move object via waypoint (how platforms move)
- InOutSpikeConsecutive

The above are now in the machine type folder (both script and prefabs). This means that you can tell these prefabs to speed up / reverse / etc (any of the machine functions). Its was a lot more difficult to reverse some of these objects than I initially thought, so I ended up just starting over on some of the scripts so I didn't mess up trying to insert logic. Since the above objects now inherit the machine class, it is easy to create other scripts / prefabs / triggers to effect them.

I went through the entire cat game and made sure everything was fixed after messing with the new machine prefabs. There were some issues with the objects going back to default values or other problems. I think I fixed everything, but you never know.

Minor stuff
Fix a problem with the area modifier reverting changes when multiple area modifiers are next to each other
- Done by counting the number of active area modifers in a static variable.

Event Manager will now create itself if it is needed (for button presses)
- Some scripts now use the event manager to do the button presses instead of in their own script

Bullet grabs the material and the sorting layer from the guy character so that they are the same

Block trap now has a delay between how fast the sound can play between objects of its type
- Nobody likes 100x of the same effect being blasted withing half a second. Set to 1/10 the clips length delay

+other stuff dealing with Unity updates and various script things


Let me know if anything is amiss in this version. I may have missed something in the cat game scenes (did ~10 playthroughs and fixed things that came up).

4
Quick update
Need to finish up some stuff, then I will release the next version using the latest Unity engine.

- New animation controller for the Guy
- Complete rewrite of all the 2d controllers for the guy (Was a complete mess and it needed to be done for a while)
- Adding in machine based functions for all the scripts that can use it (involves some minor / major rewrites of some scripts). This gives the ability to start / stop / reset / reverse / speedup / slowdown certain objects easily (spike treadmills / moving platforms / etc).
- Some of these script rewrites ended up being so different, they broke the prefabs that were using them and set their values to default. Some of the cat game scene's prefabs might be defaulted values and I need to go through and test.

5
I think Unity has a built in thing where you can instantly make a FPS controller (there is a tutorial on that) and since the engine has all of the other backbone, it might be possible to create a gimmick that involves 3d space. Might be really dizzying to be in first person mode jumping through spikes and whatnot. Also, I think Unity has oculus rift support now as well :p

On another note, since the start I have always been thinking of doing some 2d/3d gimmick level and see how well that works. Might be something I can screw around with next. I was thinking of having the Up / Down arrows move forward and backwards in the screen and have the camera in 3d mode with 3d objects (like in paper mario or maybe swap between different Layers of ground). I think I might rewrite the 2D character controller again to tighten things up and I could add in up / down support and just disable it for the normal engine (but it would be there if I needed it later).

Not sure I will dive into that yet, but its always on my mind. Been working on creating an auto-implemented event controller so that the game doesn't break when certain controllers aren't on the map. Right now without certain ones, the guy wont even jump.

Dont know when I will upload the next video (been kinda busy and plus I have to edit it a bit). I think I might do some videos on certain prefabs to show the extent of what they can do as well, but that is down the road a bit.

6
Engines / Re: RegalPrime-UnityEngine v1.3 - Be gentle senpai
« on: June 20, 2015, 02:43:58 AM »
Getting things set up to record and whatnot has been a learning experience and I think I have the basics down.
This video is just a basic tutorial about setting up a new game in my engine. It is nothing fancy and I did it in just one take / no editing.
Hopefully that works out fine because it makes life so much easier to do them this way.


www.youtube.com/watch?v=44_0Wmz4WpY
For now this is unlisted, so you need the direct link

Let me know how good / bad this video was (volume / did I explain it somewhat ok / etc).
The idea of making a tutorial via text / pictures and posting it seemed like an extreme pain. After I got things set up it actually went well.
I have a second video just explaining what is actually in the engine / folders, but I messed up a bit and have to edit a small portion. Of course my crappy editing software that came with my computer really sucks so I need to browse for alternatives.
If all goes well, I think I will toss some short videos in that explain certain prefabs and what they are capable of and maybe one that explain some limitations of the engine and problems.

Other than that I have been working on the creating a new animation controller for the Guy (new unity 5 stuff). It looks so much better and is a lot smaller / easier to read. I replaced the old one and it seems to not have any bugs in it.

Annnnd of course, when I open Unity today, I get the message, "There is a new version of Unity."  lol ... maybe when I get a few more things added I will update and post the next version. The patch notes seemed like more bug fixes and the current version of my engine still might work.

7
https://www.mediafire.com/download/cedxfg6xa14tzkc/RegalPrime+-+UnityEngine+v1.3.zip

Version 1.3 Release - Created in Unity 5.0.2f1 personal
Cat game scenes are reattached and most everything has been tested (still includes the avoidance boss as well).
I would also like to note that due to me doing some major overhauls of certain scripts, some objects may mess up / revert to default values (I noticed certain AI units did).
Some weird stuff happened when I updated to unity5 and it wouldn't surprise me if I missed a few things.

Messed with the layer naming
- Before I had a few extra layers for really specific purposes and I got rid of them
- Some renaming - Ground is now SolidObjects

The eventmanager now has events for certain key presses
- Should make it easy later if I decide to change buttons or how button presses are done.
- Q / R / F2 / shooting / Action buttons are in that manager
- Other scripts now attach to these events and call their functions that way
- Resetting the screen or going to title now use these events
-"Attach to object" script now attaches to the eventmanager to know when the action button is pressed
-"Shooting" script now attaches to the eventmanager to know when the action button is pressed

New HPmodule - update
- The main change is that is has an event that other scripts can subscribe so that they can know when hp=0
- Other general code cleaning and rewrites

New AI - Total rewrite
- Uses the HPmodule event to know when the object has 0 hp (dead)
- Has more of a parent child class system going on. Connecting a certain child class will give you their speciality actions.
- Useable child classes = GroundAI / GroundAI_Shooting / FlyingAI / FlyingAI_Shooting
- AI - Custom Editor
-- Allows the user to select which AI actions for each state in the editor.
-- The underlying script will then change that option into a delegate and populate that action
- Updated the prefabs to include all 4 types
- Would like to note that I did had some problems with unity remembering my custom editor variables. I found the problem
and fixed it. Hopefully that dosnt reappear.
- Going through the cat scenes, I noticed some of the cat units were using my new AI and thus were defaulted to really stupid actions. I fixed all that I saw, but be aware I might have missed one.

Projectile Spawner - Script rewrite
- Better coding than before
Projectile Spawner - Custom Editor
- Changing how / what spawns is a lot cleaner in the editor.
- Updated prefab to use this new version


Updated the machine controller (still a work in progress)
- Has the basics to allow manipulate other machine type gameobjects when trigggered (stop / start / reset)

Problems I had updating the engine to Unity 5.0 stuff
- Material offset script dosnt seem to work with the standard shader (the old objects still work though)
- Some offsets of ground units broke when updating (hope I got them all)
- Lighting has changes so some of the old stuff may seem a bit darker
- Some of the ingame objects in the cat game are not attaching themselves to their corresponding prefabs (they still work though)

New GameSettings.dat will set the sound and music to 5 as default instead of 10
- Sound changed and seems a lot louder if I put it fully to 2d sound

8
Got caught up having to get something to work just right, but I think I got it to work.

I am working on getting an official 5.0 unity version now. I need to do some testing and write the patch notes. Luckily I keep a running list of stuff I have added, but its never fun.
Oohh, tutorials. Its been on my mind forever and I will starting thinking more about doing them. The goal would be a set of video tutorials because it is easier to show than to tell.
Of course, I need to research some free video recording software / etc, because Ive never done it before.

So that thing I was working on will be in the new engine version as well.
Been working on custom editor scripting which is somewhat the same but different.

Projectile Spawner Prefab
This is a picture of the old (left side) and new object spawner script (right). Right side is 2 different pictures of the same script (2nd one shows the dropdown)
Instead of choosing yes / no for every type of spawn option there is a dropdown that is attached to a list of delegates
The custom editor also shows / hides the proper fields depending on the selection.
Looks 1000x better now and a lot easier to use.
(click to show/hide)

AI Prefabs
Before I did this change, the only way to change the action states of an AI unit would be to create a child class and override the passive / alerted / aggressive functions with a simple function name. C# Attributes + Reflection. Never heard of them before but I guess I do now. Long story short. The base AI class searches for all the functions with that attribute and creates a list. This list can be used in the custom editor to give the user a dropdown of all available actions. The script then takes that selection, turns it into a delegate and populates the proper AI action state.
SOOOO, what does that mean.
There is a dropdown box in the editor where you can select what your unit does. No more having to create a separate child script. Cool thing is, that if I ever write new AIactions, the list will show them without me having to do anything.
Picture shows how the editor looks for two objects.
(click to show/hide)

9
I uploaded a preliminary version of the engine updated to Unity 5. Did a lot of cleaning and it's a bit smaller (89m -> 71m)
This is so I can get some feedback on if people are able to use the engine in the newest version of unity (I felt kinda bad about posting my v1.2 using the outdated engine)

I am using Unity v5.0.2f1 Personal
https://www.mediafire.com/download/ya5dq5f0qz7971f/RegalPrime+-+UnityEngine+v1.25+-+Unity5Test.zip

Cat game scenes are reattached and most everything has been tested. Some weird stuff happened when I updated to unity5 and it wouldn't surprise me if I missed a few things.

10
Guess I haven't been keeping up on the newest versions nor did I think to list what version build I was using (updated the first post with that information).
Both engine 1.1 and 1.2 were built in version 4.6.1f1. If I remember, I downloaded / updated to 4.6 when it came out and never updated it since then.

Now I see that unity 5.0 free is out (since March 3, 2015), so I need to think about updating the engine and if you had problems, it makes me wonder what will happen when I do the update. I really appreciate you letting me know. I admit I didnt know unity 5.0 was free as of yet (I haven't kept a close eye on their site in forever).

Ive been doing a rewrite of the AI and that is pretty much done (at least the major points), so I will download 5.0 and start the painful task of figuring out what is new / what might break and how to fix it.

11
I feel pretty good about the scripts I have been working on, so I started taking some engine things off my list.

I really want to do another engine release, but I have to see what is the easiest way to do it. I have no clue if there is a quick way to do it without totally breaking old versions or make it just update the old stuff. I will have to mess around on that to see what is the least intrusive way. The easiest way for me is to just zip up the project folder again, but I am not sure how they works if people have some items created already in their project.

I keep a running list of things added to the engine and I dont think I mentioned any so far, so here we go.
Major addition includes
ObjectManipulation.cs script
ObjectCreation.cs script
ObjectCreationExtras.cs script

The above 3 scripts replaces the NewObjectSpawner.cs script. See this post for a bit more information.
https://www.iwannacommunity.com/forum/index.php?topic=1150.msg10687#msg10687

The new scripts were used in the creation of an avoidance boss. This scene is included in the engine build (added as a scene in the engine build)
All of the "I wanna be the cat scenes" were put into a sub folder and removed from the scene engine build). So each individual scene is there, just dont expect to be able to move from scene to scene without adding them to the engine build first.
Be aware that due to the update to many scripts, there may be some disconnects or bugs in the cat scenes. I have not went through any of the scenes as of late.

Fiddled with materials and learned how to deal with them + create normal mapping. Interesting what you can do with normal mapping. This allows for sprites to have the illusion of depth via shadows. The hardest part is to find a way to create them easily. Added some temporary normal maps for certain objects to see how they work such as blocks / apple / tree / and miku.

Created full screen effects using materials and scrolling normal maps
- fire - looks like the screen is on fire with flames licking up. pretty nice looking
- fog - looks like rolling fog / smog across the screen
- water - looks like you are looking at the bottom of a riverbed with the water going over rocks. Not very awesome looking but I didnt try all that hard finding good materials, lol

Got rid of the hard coded double jump and put in a generic multijump variable. This way you can easily change the number of extra jumps the player can do.
- Added the option to change this variable through the area modifier prefab.
- Jump refreshers refresh all the extra jump.

Jump refresher updated
- Has option to add a certain number of jumps per trigger
- Has option to allow to go over jump cap from the above trigger

Added an array of saveable triggers. Is set to 10 at the moment. Used for things like secret collectables or boss tokens.
- GameCompleted script - Tells the saved file the game is completed.
- SaveATrigger script - Updates the array / value when object is triggered and saves it to the file
- CheckATrigger script - Will check if the statement is valid and will enable / disable the gameobject.

Updated the save/load screen. Moved some stuff around and updated the graphics a bit.
Added in a panel to show the 10 collectables. Shows an icon when that triggered index is triggered ingame.
Changed the game complete from a toggle button to a gameobject that is set active when the game complete trigger is activated. Added a game completed icon.

ResetManager is now the EventManager
- Added in the ability for other scripts to know when the player has died. Can be used for avoidance fights to stop them from doing their actions.
- Still has the ability for other scripts to know when to reset their values.
- Certain information is displayed in the console about attachments when events are called (just for my information). Stuff like, 7 scripts are resetting, or player died by X object and 2 scripts were told about it.

PlayerDied script is now the PlayerHPModule
- Player now has option to change its HP. Default is 1 HP and 1s damage delay. These variables are hard coded and only changeable in script.
- I can expand on this later when I feel a screen might need a HP based player (still need functions to manipulate this value).
- Added in option for hit sound effect. Is only played when player is hit and still has hp remaining (else the death sound would play).

CalculateChecks.cs. If a AoE check finds a ground object but it is not a BoxCollider2D, it will use raycasting on whatever is there to find the distance (previously had bad logic where I missed an else statement)
Went though every script to get rid of certain player references. Each object should effect the player that triggered it. Overall just a clean up of code, might help out later.
Cleanup of old engine assets. Some sprites / old AI prefabs that didnt have connections. Some old materials.
Added a few sprite sheets of fruits / flowers because they looked nice
Added duplicate sprites + their normal map, so that section is a bit of a mess.

Been a while since I have done a picture, so here are two.
All of the sprites on this screen are the default guy game sprites EXCEPT that I added a normal map to them (even the background). I made all of the normal mapping so dont expect it to be perfect.
Stuff to look for
-Shadow on the face and hands of the guy
-tree / spikes / apple gets texture from shadows
-parts of miku seem to to have some depth
The light source is on the rightish middle
(click to show/hide)

New loading screen as well. looks better than the old one
(click to show/hide)

12
Engines / Re: RegalPrime-UnityEngine v1.1 - 4-4-15
« on: April 04, 2015, 03:48:13 AM »
Been a while since the last update. The avoidance is still the same :p

It's surprising how long you can spend writing support scripts to get them just right. After doing this scripting and my avoidance, I watch others stream and I look at it so differently now. Its not that its a fancy design, I try to break it down in how they did it, and that alone made me spend a lot more time adding functionality to make it easy to do these design effects. On top of that, I found some cool c# stuff that made me rewrite a chunk of my code again, but it made it a lot easier to add to the script now.

I have a bit of time tonight and I figure I will list ALL of the stuff I have added. Guess it will also help me with the readme when I update the engine in the future.
For the people who have looked at my engine, all of the stuff I have been coding, replaces the NewObjectSpawner.cs script. It works better, has tons more functionality, and its very clean.
The script contains functions that make life easy. Stuff like, moving / rotating / scaling / looking at an object, and also the creation of shapes for use in an object spawner / avoidance fights.

- So here we go - I will list the coroutine name and brief information about what it does
Pretty much every coroutine has extra variables that are not listed that deal with start delay, position references, locality, and etc

ObjectManipulation.cs script
(click to show/hide)

ObjectCreation.cs script
(click to show/hide)

ObjectCreationExtras.cs script
These are coroutines that do a chain of events and then destroy themselves to make a simple to use effect.
Nice to be able to do a multistep effect with one function call. Too busy writing the above script stuff to add to this section to make the better looking effects.
(click to show/hide)

Not sure when I will be done with these scripts. Also not sure when I will release the next engine version. If you are interested in the above scripts, let me know.

13
The whole saving inside of the monster problem can be resolved just by hitting the Q button (was in the readme :p not that I expect most people to read them). Dont worry I did it a few times as well. Pressing R, normally restarts at your save point and resets the room / monsters to their default positions, whereas Q will restart you at the start of the room and reload the scene from scratch. Of course you can always skip to any room you want from the main save / load screen in the current build and start the scene over that way.

I appreciate your feedback on my engine. My goal is more to make sure my code works rather than make the best game / avoidance ever and Im glad you noticed that.
Overall, the avoidance code is stupidly simple looking because it just calls all of these functions Ive been working on. I think it took me longer to diagram the song than write the boss code.

Here is one of the phases of the avoidance boss.
I dont have overloaded functions as of yet (so there is a lot of null / new Vector2(0,0) fillers that probably wont be there later)
You can guess what stuff does just by glancing at the code.
X object, Do this, at variables X /X / X / X / etc

(click to show/hide)

A lot of what I have done is all of the generic stuff, like move / rotate / create and dealing with sets of objects. My next post, Ill give a list of all of the new completed functions that are available. For the most part that stuff is done and I have enough of the functions I can start doing some advanced custom "actions." Not sure what things I will work on, but for starters I already wrote the ability to create an N-Sided polygon with X skips (skips = instead of just going around the outside of an object, you can skip X points and create star like objects easily). I also rewrote how shapes are created and morphed using something new I learned about C#.

14
Engines / Re: Avoidance Done - Round1
« on: March 11, 2015, 02:57:35 AM »
Parsed the entire song for the avoidance fight and took notes of all the important times / repeats / stanzas / chorus and whatnot. Figured I would do extra work upfront so I dont have to do that later. Divided the song into 10 sections. Added simple actions for the avoidance fight and set them to the timing. I can start at any of those sections and test from there (dont have to listen through the entire song all the time). Its nice to be able to just plug in the starting time and how long you want something to go for and it just works. At this point I had a crappy avoidance with good timing.

Was a mix between jumping between the avoidance code and updating the major scripts, but for the most part, all of the old functionality has been put into the new scripts. All the new versions of the functions look so nice comparatively. Added extra functionality as well. No overloaded functions as of now just so I dont have extra work to do if I do some major restructuring. I have a few more things I need to add though, but its 100x better than the old version (probably another child script to deal with custom stepped effects to keep them out of the main scripts).

Overall I kinda just picked a random anime song from youtube that seemed to have good segmentation. Due to the length I felt I would keep things fairly simple and extremely low RNG. After the other script update, I added more complex actions and spawners. Also added a few test custom actions which were a lot easier to create with the last iteration of the script. Fancied up the room and I decided to release a version to show what Ive been doing. I have a lot more functions that I wish I could of put in, but it would of just made things more complex.

https://www.mediafire.com/download/rl5wavilolbx6n7/Avoidance+Testing.zip
A few things.
Song is 3.54 mins long. Has a few repeat sections (chorus) were the "animation" is the same / similar. This was to keep things simple.
The title / save_load / ending screen are the same from the engine.
There is only one screen in this build (the avoidance boss)
Shoot the yellow box to start the avoidance fight.
All of the fruit projectiles have a circle collider on them, so the stems are safe.
I wish I had some better tiles to fit the nature of the song, but it looks ok.

I wouldn't consider it a bug, but during testing, I have the song skip to a certain time at the start of each section of the avoidance fight. This was so I could start the fight in certain sections. Some are seamless and you wont notice it, whereas others will have a very slight noise. In the real release, I would just comment out the skip to X spot in the song, so for now it is still in.

Nothing too fancy and I wish I could of thrown some other script function calls in to show better what I can do with the rewritten scripts.
Overall, this helped me iron out those problems from the older version and should make future bosses / avoidance so much easier. It was seriously easier and cleaner looking than my cat boss script, so that was a good thing.

15
Engines / Re: RegalPrime-UnityEngine v1.1 - 1-23-15 - Update
« on: February 19, 2015, 03:37:02 AM »
After the initial release, I decided to take a week off of this project (ended up being almost 2 though).
I had a bit of trouble wanting to go back to it because I had no clue what to work on next.

Long story short, I figured I would try to make an avoidance boss.
I had a super script that did a whole bunch of stuff and was used in creating the cat boss in the game (and other things). This includes everything from movement to spawning of objects and shapes. I didn't want to fix what was there, because it will break the other stuff in the game and I really don't want to mess with the boss code anymore. I figured there was no better time than now to create a version 2.0 of that script.

So, I am slowly moving over each function and testing / expanding / and simplifying everything about them. Some of them were, /// uugh, such a stinking mess, Im surprised they worked, lol, those needed total rewrites. Luckily, I was able to condense a few functions together. I have a few more main functions to bring over and then I think I will try some basic avoidance timing and testing to see if  everything is working all right. I think it will go all right, but I am afraid that I may run across some unforeseen problem mostly dealing with manipulating multiple design options in an easy way. In the cat boss I was able to do it, but I wasn't happy with the way I had to code it, hopefully this will change with the new function design.

-Very minor engine code fixes

Pages: [1] 2 3