There are several problems with this tutorial that were I not experienced in developing, lead to relative dead ends for new people.
The engine component for the ship engines_player, does not render in the game or scene space until actually playing.
In the Player Movement tutorial, the script fails several times throughout the tutorial leaving you to sit and wonder “what is wrong?”.
I realize you are referencing entities without values early on and correct it later, but nowhere in the tutorial does it actually ever explain that. You should really have one of your documentation people go back through this because it is a very bad starting point for new people coming to Unity, at least with the current build and tutorial set.
Yeah, the link to the tutorial would be very helpful.
Also, is it one of the old ones on the Assets store? Many of those are for past Unity versions and don’t work as-is. However, I’d still love them to be updated or at last-
Nevermind, you’re talking about the latest, newest one here:
Here’s to hopes that a Unity Staff member will get to it quickly! When I saw that today, I was pretty curious and wanted to follow it, although I already have a current project.
This is a new project that was release just before Christmas.
Valdier:
Please see my replies in-line below:
The “engines_player” is a particle system. These are very powerful and efficient systems for making visual effects in game engines, including Unity. You should familiarise yourself with particle systems as you move forward in your development to understand their strengths. One of the expected behaviours of a particle system is to not display in edit mode unless you are selecting/editing that particle system. This is partly for performance reasons, but mostly (imho) to keep the editing experience clean and distraction free.
You will see a gizmo indicating the location of the particle system in the scene view unless you have turned off or reduced your gizmos.
If you want to see the details of the engines particle system drill down through “engine_player” to the two particle systems that make up the player engine vfx: part_jet_core and part_jet_flare.
If you select/edit the particle systems, the particle system will play in the scene view. When you have finished and deselected the particle system, or changed focus to a different GameObject, the editor will display the last frame of the particle effect in the editor:
I’m sorry that your Player script was not working correctly. Let’s try to find out “what is wrong”?!
Are you sure you followed the steps accurately? Have you gone back to the beginning of that video and checked each step? The script should not intermittently fail. It should work, or, if there was an error in writing the script, it should fail in the console with a concrete error, which should point to where the error was made.
Have you tried the “Done” scene? Does this fail for you? I have not been able to make the script fail. As the videos were recorded with the scripts as written, and the game did successfully compile and play during recording… the scripts should work as long as they were accurately written. If you need to, you can compare your final script to the “Done” scripts in the “Done” folder. This way you will be able to see your errors with a “side by side” with the complete script.
One issue that you could be running into is saving your script before it is finished and returning to Unity. If you return to Unity before the script has reached a stable point and you have saved that script, you could have a script that will not compile and you will get errors in Unity. This, however, should give you error messages in the console. Make sure you complete each step before saving and returning to Unity. You can swap your focus to Unity at any time without issue if you don’t save your script. It is the act of saving the script that will indicate to Unity that you are ready to recompile. Saving an incomplete script could lead to compile errors.
Do you have any error messages that you can post that might help us find out where your project has gone off the rails? We’ll try to get you back on track asap.
I don’t understand this comment at all, frankly. I go out of my way in this video series to reference the documentation directly from the script editor and explain not only the specific function we need, but the class it belongs to.
Can you give any more information as to which video and the approximate time where you are confused and what is confusing you? This way I can either explain what’s going on, fix any problem if it exists - or both if necessary.
Adam,
I am following your tutorial right now and it’s very good. I am having an issue with the game hazard asteroids. When I test my scene after applying the gamecontroller script the asteroids fall diagonally instead of straight down. Any idea why this is?
The very first things I’d do (standard reply, I know) is to check the video again and/or compare it to the “done” scripts to make sure all the code is correct. Most likely there is a typo somewhere that’s effecting the way the asteroids move. The asteroids move using physics forces and setting the Ridigbody.velocity so, the forces might be set with values in more than just the z axis? or they could be set in some other way that doesn’t act one the asteroid along the global coordinates.
If, after checking the script for typos, you still have aberrant behaviour, post your Asteroid controller code here and we’ll go through it together.
I have a kind of problem very strange, all work perfectly in unity. but when the game is done, made for webplayer, 0 errors, all perfect, the problem is when im going to play it at the web, movement controls dont work , fire shot yes.
It works for you in the editor but not the web-player…
And I assume you’ve double checked the code against the “done” folder?
Try building the “Done_Main” scene (or whatever it’s really called…) and see if that works on the web. If it does, then check for differences between the two, if it doesn’t, then ping me here again, and we’ll work through it.
Yeah with Done_main works fine, I dont understand why with my scene don’t work, if I did all the path like the tutorial. Anyway thanks for help me and your answer Adam.
Hi ppl of the community!
i also have a problem with this tutorial, mine is with this lesson called Creating Hazards:
i did exactly as this tutorial says, even copypasted the code in every lesson but some things seems to have changed about how the unity classes used in this tutorial works since the time when this videos where made (maybe rigidbody.angularVelocity?).
my asteroid not only spins but also moves freely around 3d space in a random direction, making the collision with the shots impossible, while the asteroid in the video spins in place.
The code is the same since i copypasted it so here’s the proyect in case youre wondering how i’ve followed the rest of the instructions:
PS: english is not my native language so please forgive my gramatical, orthographic and such errors.
This is due to the way the collider is set on the Boundary in the scene.
You have copied / written the scripts correctly, but other components are not correct.
One way to test this is to run the “Done_Main” scene in Done / Done_Scenes. If this is working correctly, then you know that it is an issue with the way you have set up your scene. Another way is to drag one of the the “Done_Asteroids” from Done / Done_Prefabs into the scene and test. This also works correctly.
What this boils down to is: You have both the Boundary object’s collider and the Asteroid object’s collider set as normal collision detecting physics colliders.
If you watch the previous video (“Boundary”) more closely, at about 1:45 - 1:55, the Boundary’s collider is set to be a “Trigger” collider by selecting “Is Trigger”.
What’s happening is, with both the Asteroid and the Boundary set as physics colliders, the Boundary and Asteroid are rejecting each other, as part of a physics based collision on the first frame of the game. As the Boundary object does not have a rigidbody, the Boundary cannot respond to physics forces, so it does not move, and the Asteroid is ejected from the Boundary, which is where it’s getting the movement force from.
To fix this issue, you need to set your Boundary’s Box Collider “Is Trigger” property to “true” by enabling the check box.
Optionally, you can also set your Asteroid Collider to “Is Trigger” as well, as it does not need to be a physics collider. Either way, it will receive the “OnTrigger…” messages from the Lazer Bolts as they are marked as “Is Trigger” as well.
Maybe I’m asking this inside the wrong thread and I’m sorry if this is the case, but I’m having an issue with a simple game I’m developing using this tutorial:
I created a shot like those in this tutorial and followed the “Shooting shots” part. The problem is that when I Instantiate the shot with the script it simply appears inside the hierarchy field but doesn’t show on my game view, however when I drag the shot prefab to the “Shot Spawn” Object in the Hierarchy field it fires properly
Any idea why this could be happening?
Thanks in advance.
This is a great tutorial by the way.
Never mind, Adam. I figured it out. Somehow my prefab was bad scaled and I guess I was not able to see them on the little game view screen I use. Besides, doing this at 19 PM instead of 2 AM “may” have something to do with my concentration being better now. Haha.
Anyway, to comment on the thread main theme, the tutorial seems perfect for me, even being new to Unity and gaming development.
I’m new to Unity and really enjoying it at the moment!
Unfortunately though, I’m having issues with the space shooter tutorial, I’m on the player movement chapter and it’s just told me to go in and move the ship around. This is to show me that it’s slow and eventually we increase the speed.
But, I can’t seem to move the ship? I’ve tried pressing different keys but nothing seems to work?
Hi there , I’m doing the space shooter tutorial and I’m stuck at the scriting segment. I keep getting this meassage :Assets/scripts/StarfighterController.cs(14,1): error CS8025: Parsing error . I’ve tried copy paste with the done code to make it match with the one in the video and nothing changes. lost please elp. :lol:
Just working through this and am stuck at the stage where you drag your asteroid prefab to the game controller script to associate the asteroid as a hazard.
Any thoughts??
p.s. I’m pretty much copying and pasting the scripts from the boxes below the tutorial videos each time.