Showing posts with label weapon. Show all posts
Showing posts with label weapon. Show all posts

Tuesday, November 23, 2010

Allar's Dev Diary #16: Day 6, Tower Defense Side Project

Sorry I'm 7 hours late with this posting, had to do some stuff.

Day 6 (11/23/2010)


11. Weapon Archetype System


When designing the system for towers to be placed, I thought it would be cool to only have a few base tower classes and then allow for a lot of per tower customization and attributes through the use of Archetypes so I can tweak settings within the editor instead of compiling every time I wanted to change a setting and so that if anyone picks up my project they can add their own towers by just creating archetypes instead of figuring out how to derive and code their own towers. I figure I want to make modding design elements as easy as possible so that if one design doesn't work I can quickly switch to another. The problem with this was, I have had no experience in creating a dynamic system that uses object archetypes rather than actual hard coded classes. Being that towers might be a complex feat to make into an archetypal system as my first project with archetypes, I decided that I should convert the current weapon system to use archetypes so I have something to base on. This took a bit of time to figure out all the kinks, but what I ended up with was a solid base for a really cool way to create new games with ease and test weapon systems without compiling. This means that once I fully develop a custom weapon class, all in-game weapons will be based off of the same weapon class but their attributes will be set with object archetypes. Of course, the archetypal system should also allow for archetypes of classes that derive from my base weapon class, and that is supported simply by the fact that UnrealScript is already heavily object oriented.

Here is a really long and boring video of a brief overview of my most recent Dev Diary posts and how to use the Weapon Archetype System. One day I'll get a better voice, I swear. <_<



Saturday, November 20, 2010

Allar’s Dev Diary #14: Day 3, Tower Defense Side Project

Day 3 (11/20/2010)


7. Aiming With The Mouse


Now that I got the camera set up yesterday and played a lot of Vindictus, its time to get back to work. The next step is to get the player to aim towards where their mouse instead of in the direction the player camera is facing. This way movement and aim will be separated and allow for interaction with the world with the freedom of rotation but locking movement to the camera axis. Basically, the player will be controlled like most top-down shooters. Now for this project I am currently using the September build of UDK even though the October build is out as this project is also meant to help some classmates with their project which is currently September based. The reason I bring this up is that the October build of UDK strips out all UIScene functionality completely and everything related to it and in the past the class UIRoot was my primary way of accessing mouse coordinates. This means that for my project to not need a major reworking in the future I would have to find a new way to grab mouse coordinates. Now I looked all over the UDK development code and I could not find a straightforward way to do so. If there is a easier way than the process that I went to that I will go over, please let me know. The way I did it relies on a SWF to store mouse coordinates which then UnrealScript grabs. Its a little odd but it works flawlessly once set up correctly. I figured that if I used ScaleForm to grab mouse coordinates, Epic won't be scrapping ScaleForm any time soon.

The first thing we are going to need to do is to replace the UT HUD with our own ScaleForm based HUD. As fancy as the UT HUD is, I'd rather have my own. Also, I need to create mouse coordinate functionality without relying on the old hud's Canvas to use DeProject, which I'll get into later. For now, I don't need anything fancy in my HUD except a mouse cursor which will indicate where the player is aiming and will also serve as a cursor for UI interaction with HUD menus and things. Time to start up Flash and build me a HUD. I am using a trial version of Flash CS5 at the moment.

With Flash CS5, I have already set up my ScaleForm extension and my ActionScript settings. If you have not dealt with ScaleForm and Flash before, I strongly encourage checking out my ScaleForm series here. With my new flash document open, I went ahead and drew myself a cursor with the flash tools, and this is what I came up with:


Tuesday, May 4, 2010

Allar's Dev Diary #4: Custom Character + Weapon Assets

Just some custom assets I've assembled/created and implemented into my code. They should be replaced with proper artist assets later on but its more of a demonstration of a custom weapon that reloads, animates, plays sound, etc without any ut classes.

Thursday, April 8, 2010

HTWeapon: Part 6 - Hiding First Person Mesh In Third Person

Video Version


Subject: HTWeapon: Part 6 - Hiding First Person Mesh In Third Person
Skill Level: Beginner
Run-Time: 5 minutes
Author: Michael Allar
Notes: How to make your weapon deal damage upon firing.

Streaming:     720×480 1920×1080

Download:     Low-Res (18MB) Hi-Res (22MB)

Written Version


Subject: HTWeapon: Part 6 - Hiding First Person Mesh In Third Person
Skill Level: Beginner
Author: Michael Allar
Notes: How to hide your first person mesh while in third person

No written version here, just code. If you want to write this up, contact me.

Friday, March 26, 2010

HTWeapon: Part 5 - Dealing Damage

Video Version


Subject: HTWeapon: Part 5 - Dealing Damage
Skill Level: So easy a caveman can do it.
Run-Time: 5 minutes
Author: Michael Allar
Notes: How to make your weapon deal damage upon firing.

Streaming:     720×480 1920×1080

Download:     Low-Res (22MB) Hi-Res (27MB)

Written Version


Subject: HTWeapon: Part 5 - Dealing Damage
Skill Level: So easy a caveman can do it.
Author: Michael Allar
Notes: How to make your weapon deal damage upon firing.

Wednesday, March 24, 2010

HTWeapon: Part 3 – Creating A Muzzle Flash

Video Version


Subject: HTWeapon: HTWeapon: Part 3 – Creating A Muzzle Flash
Skill Level: Beginner
Run-Time: 1 Hour
Author: Michael Allar
Notes: How to implement a ParticleSystem to use as a muzzle flash for your weapon.

Streaming:     720×480 1920×1080

Download:     Low-Res (156MB) Hi-Res (226MB)

Written Version


Subject: HTWeapon: Part 3 – Creating A Muzzle Flash
Skill Level: Beginner
Author: Michael Allar
Notes: How to implement a ParticleSystem to use as a muzzle flash for your weapon.

Friday, March 19, 2010

HTWeapon: Part 2 – DrawWeaponCrosshair()

Important: I didn't notice this until after I posted this but my stuttering is pretty bad in this video. Just a heads up. I will re-do this in the future.

Video Version


Subject: HTWeapon: Part 2 – DrawWeaponCrosshair()
Skill Level: Beginner
Run-Time: 30 minutes
Author: Michael Allar
Notes: Going over how to have our weapons handle the drawing of our crosshair.

Streaming:     720×480 1920×1080

Download:     Low-Res (111MB) Hi-Res (160MB)

Written Version


Subject: HTWeapon: Part 2 – DrawWeaponCrosshair()
Skill Level: Beginner
Author: Michael Allar
Notes: Going over how to have our weapons handle the drawing of our crosshair.

Tuesday, March 16, 2010

Migrating From February to March

Video Version


Subject: Migrating From February to March
Skill Level: Beginner
Run-Time: 30 Minutes
Author: Michael Allar
Notes: Migrating our code base from Feb. to March.

Streaming:     720×480 1920×1080

Download:     Low-Res (117MB) Hi-Res (167MB)

Written Version


Subject: Migrating From February to March
Skill Level: Beginner
Author: Michael Allar
Notes: Migrating our code base from Feb. to March.

See video for an in-depth explanation. Sorry about the indentation, it seems like my indentation will not survive copy paste… D: I will create a written tutorial soon.

Tuesday, March 9, 2010

HTHUD: Part 1 - Building The Base Class + Displaying Ammo

Video Version


Subject: HTHUD: Part 1 - Building The Base Class + Displaying Ammo
Skill Level: Beginner
Run-Time: 1 Hour and 30 Minutes
Author: Michael Allar
Notes: Creating a new HUD class and having it display our current weapons ammo.

Streaming:     720×480 1920×1080

Download:     Low-Res (236MB) Hi-Res (337MB)

Video Update 3/25/2010


Run-Time: 2 Minutes
Notes: Fixes chat messages not displaying.

Streaming:     720×480

Download:     Low-Res (7MB)

Written Version


Subject: HTHUD: Part 1 - Building The Base Class + Displaying Ammo
Skill Level: Beginner
Author: Michael Allar
Notes: Creating a new HUD class and having it display our current weapons ammo.

See video for an in-depth explanation. Sorry about the indentation, it seems like my indentation will not survive copy paste… D: I will create a written tutorial soon.

Monday, March 8, 2010

HTWeapon: Part 1 - Adding Ammo

Video Version


Subject: HTWeapon: Part 1 - Adding Ammo
Skill Level: Beginner
Run-Time: 30 minutes
Author: Michael Allar
Notes: How to implement a very basic ammo system in our custom weapon class, taking code from UTWeapon.

Streaming:     720×480 1920×1080

Download:     Low-Res (66MB) Hi-Res (200MB)

Written Version


Subject: HTWeapon: Part 1 - Adding Ammo
Skill Level: Beginner
Author: Michael Allar
Notes: How to implement a very basic ammo system in our custom weapon class, taking code from UTWeapon.

See video for an in-depth explanation. Sorry about the indentation, it seems like my indentation will not survive copy paste... D:

Sunday, March 7, 2010

Adding an M16: Part 2.5 – Dummy Rigging

Video Version


Subject: Adding an M16: Part 2.5 – Dummy Rigging
Skill Level: Beginner
Run-Time: 10 minutes
Author: Michael Allar
Notes: Rigging a temporary M16 slug model to use for testing purposes using dummy objects.

Streaming:     720×480 1920×1080

Download:     Low-Res (17MB) Hi-Res (35MB)

Click here to continue to Part 3:  Preparing Model For Implementaton

Adding an M16: Part 2 – Geometry Rigging

Important Note:


During the video, I mention that all weapons point down the Y axis. I was basing this knowledge off of the Shock Rifle, which turns out is coded to be rotated to be facing down the X axis like the Rocket Launcher. Your model can face down any axis in 3DS Max, but make sure that after you import it that it faces down the X axis using the Rot Origin properties. You can leave it facing in the Y axis if you want, as adjusting the rotation in the weapon's code is also really easy to do too and I will go over how to do so in the code part of this tutorial series.

Video Version


Subject: Adding an M16: Part 2 – Geometry Rigging
Skill Level: Beginner
Run-Time: 21 minutes
Author: Michael Allar
Notes: Rigging a temporary M16 slug model to use for testing purposes.

Streaming:     720×480 1920×1080

Download:     Low-Res (47MB) Hi-Res (84MB)

Click here to continue to Part 2.5:  Dummy Rigging (Optional)

Click here to continue to Part 3:  Preparing Model For Implementation

Written Version


Subject: Adding an M16: Part 2 – Geometry Rigging
Skill Level: Beginner
Author: Michael Allar
Notes: Rigging a temporary M16 slug model to use for testing purposes.
Prerequisites: UDK, 3DS Max, ActorX

Adding an M16: Part 1 - Modeling

Video Version


Subject: Adding an M16: Part 1 - Modeling
Skill Level: Beginner
Run-Time: 21 minutes
Author: Michael Allar
Notes: A temporary M16 slug model to use for testing purposes.

Streaming:     720×480 1920×1080

Download:     Low-Res (54MB) Hi-Res (94MB)

Click here to continue to Part 2: Rigging