JOIN THE GENERIC SHOOTER SUPPORT DISCORD! Chat with other Generic Shooter Devs!
(We recently just moved from Slack)
New Wiki is a work in progress.
OVER 1300 COPIES SOLD!
Important: The 3D UI has been officially deprecated and will no longer be in 4.10+ versions. It has been replaced with a much better 2D UI system.
Now available on Itch.io!
WHAT IS THE GENERIC SHOOTER SAMPLE PROJECT?
I have to update this video at some point.
GENERIC SHOOTER SAMPLE PROJECT FEATURES:
- 100% Blueprint
- Includes *basic* mobile functionality
- First person and Third person camera views
- Full support for multiplayer
- Includes Deathmatch and Team Deathmatch game modes
- Configurable options such as round timer and friendly fire
- Randomly chosen teams with team name and team color support
- Pre and Post game Lobby
- In-game Chat
- In-game Scoreboards
- In-game Kill Feed
- Configurable Instant Hit and Projectile weapons
- Includes basic pistol, rifle, grenade launcher, and rocket launcher weapons
- Includes very basic placeholder animations for first and third person
- Weapons can be dropped, behave as physics objects, and can be picked back up
- Ammo pickups
- Hit markers and take damage indicators
- 3D Frontend menu with full keyboard and mouse support
- Persistent settings menu
- Functional server list*
- Customizable player hats
- ...and lots of little things to add polish done through iterative feedback and playtests done on my twitch channel.
CURRENT VERSION: Electric Eel 4.15
07/24/2015: Ambitious Artichoke: General bug fixes and improvements, added a lobby, better support for explosion decals
08/07/2015: Butchering Beagle:
- Out of the box tested support for PC, Mac, Ubuntu, Android (Galaxy S5, Nvidia Shield Portable), iOS (iPad 2) and PS4.
- Mobile support from me will be very limited. Also, mobile UI is playable, but its pretty annoying. Will revisit when I can add buttons and joysticks to the HUD without joysticks eating all input
- Mobile "Join Session" node in BP seems to not work with OnlineSubsystemNull (engine bug), but mobile can connect to servers via 4-finger tap and "open" command
- By setting the project's default map to MenuShell, the game will automatically load a Desktop or Mobile main menu based on what platform you are on
- Crouch functionality has been added.
- Fixed bug where map vote would stall if timer expires and no one has voted
- Fixed bug where if a client joins the game late after the lobby screen has disappeared, their first person arms would appear invisible
- Fixed bug where if you didn't give a player a Primary slot weapon by default, they would spawn holding nothing even if they had another non-Primary weapon
08/10/2015: Epic-created update to fix "Add To Project" vs "Create Project" buttons in the launcher. If you already have the 08/07/2015 version, this update has nothing new feature or bugfix wise, and only addresses an issue with the launcher.
09/22/2015: 4.9.1 version of Butchering Beagle released to the marketplace.
11/13/2015: Generic Shooter marked 4.10 compatible without requiring any changes
01/04/2016: Cathartic Crouton Released for 4.10+
- Change: Entire 3D UI system has been ripped out and replaced with a much better and easier to use 2D UI
- Change: Mobile and Desktop main menu paths merged together, only one main menu exists for desktop and mobile platforms now
- Change: Did a deep animation pass and fixed many of the 4.7->4.8 animation issues. Made more placeholder animations. 1P weapons now are perfectly centered when aiming down sight when using offsets of 0,0,0.
- Change: Minor performance optimizations across the board
- Change: Improved asset file naming conformity (especially regarding animations)
- Feature: Very much improved support for programmatic addition of Game Mode settings in the main menu UI (Tutorial coming soon)
- Feature: Exposed "Prefer Third Person" to main menu settings
- Feature: BP_Deathmatch (therefore all game modes) now has settings to control whether player nametags are visible
- Feature: Basic jumping is now supported 'out of the box'
- Feature: Fall damage
- Bugfix: Unintentional vertical 1P jittering
- Bugfix: Grenade Launcher explosion hitch related to obscure but reproducible Garbage Collection bug in core Engine
- Bugfix: Empty sound cue VolumeTesting_SFX
- Bugfix: Clients only see one impact for shotguns instead of scattered impacts (Client shotgun scattered impacts are now implemented but are only approximated to save bandwidth)
- Bugfix: Looped weapon fire sound cues and muzzle flashes replicate incorrectly
- Bugfix: Clients' auto reload is not in sync
- Bugfix: Animation speed issues on clients, clients' run animations play at a faster rate than intended
- Bugfix: Rocket projectiles are not rotated correctly on clients
- Bugfix: LAN shows Online Games and Online Games shows LAN with Steam subsystem enabled
- Bugfix: Dedicated servers don't properly clean themselves up after round end
2/29/2016: Cathartic Crouton Patch 1
- Change: Deep clean pass across all content
- Bugfix: Looping muzzle flashes don't stop when running out of ammo
- Bugfix: Tracer rounds don't have correct rotation on spawn
- Bugfix: Weapons dealing double damage in many cases
- Bugfix: Having only Team spawn points without any 'Any' spawn poitns causes 'Can't Find Player Start'
- Bugfix: Semi-auto weapons don't respect Time Between Shots
04/19/2016: Cathartic Crouton Patch 1 - 4.11
- Change: Minor changes to work with 4.11 smoothly
- Bugfix: Scoreboard not rendering game mode description correctly (Thanks Chitolocz)
05/18/2016: Cathartic Crouton Patch 2 - 4.11
- Feature: BP_GameMode now has an 'Enable Multiplayer' property where if disabled prevents the game from hosting a server. Host Game UI also reflects this.
- Feature: Servers should now ensure that a session has been created even if a server is created without the main menu UI. This should make batch testing / dedicated servers easier to be listed when searching.
- Change: BP_DefaultImpactEffect now has asset data stored in a series of structs for easier management
- Change: BP_DefaultImpactEffect now has the ability to load in effect assets asynchronously. This is disabled by default. If you define your own impact effect class, you should note that all instant hit weapons now have a property dictating whether to auto-load all impact effects immediately or not. If this is turned off, then all impact effects used by that weapon will load asynchronously.
- Bugfix: Can't pick up weapons from weapon spawn factories. Fix is shown here. Enable 'Ragdoll on Spawn If Dropped' in BP_WeaponFactory -> Spawn Weapon
- Bugfix: Disabling lobby causes mouse cursor to get stuck on match start. Fix here by adding these nodes in WB_Lobby -> ShowLobby
- Bugfix: Explosion Decals stretched weirdly. Fix is shown here. 4.11 appears to have changed how decal sizes work. Flipping these values around will make it work correctly. Make this change in BP_ExplosionEffect -> SpawnDecal. This was done for weapon fire but I mistakenly overlooked explosions.
- Bugfix: Chat no longer appears when pressing T in-game. Fix is shown here. Simply define a Tick and add a call to parent function in WB_HUD_Desktop. 4.11 Tick inheritance seems to have changed as of this answerhub post.
07/11/2016: Cathartic Crouton 4.12.5 (Must have Hotfix 5 or later)
- Change: BP_PlayerCharacter and BP_PlayerCameraManager now use a First Person character mesh attached to a camera and spring arm. 4.12 mysteriously broke transform math for more optimized approach.
- Bugfix: Fixed 4.12 related issues mostly related to broken nodes needing to be re-done.
- Bugfix: When mouse is set to inverted, it becomes reset after death. Fix is shown here.
- Bugfix: When weapon fire sound is set to loop but muzzle flash is not looping, weapon fire sound never stops on clients. Fix is shown here.
- Bugfix: Sometimes client lobby screen titles are cut off. Fix is shown here.
09/20/2016: Dank Drumstick 4.13
- Change: 4.13 Compatibility
- Change: All asset names now conform to http://ue4.style
- Change/Feature: Greatly reworked character definition system. Character infos are now defined as BP_CharacterInfo classes. This adds support for characters of different skeleton types. These character infos also define which animations to use with weapons, as well as weapon offsets
- Change: Weapon animations are now pulled from character info and are not stored in weapon classes
- Change: Server is now aware of client's camera view mode
- Change: All impact effect decals now have lifespan default to 10 seconds instead of 0 seconds (so that they clean themselves up over time)
- Feature: Very basic Foot IK, disabled by default. Hopefully improved in later versions by use of animation curves
- Feature: Game modes now have an option to not shuffle team infos, thus making team info data static
- Feature: Footsteps. Footsteps have the ability to have unique effects per physical surface type, however I only ship a generic footstep for all materials. Footstep effects are defined in BP_CharacterInfo classes
- Feature: More consistent and better weapon fire line traces and projectile spawning
- Feature: Player controllers now have a checkbox for picking a random more human readable player name on begin play
- Bugfix: Client projectiles now no longer choppy in-flight -@gbr
- Bugfix: Picking up ammo throws an error
- Bugfix: Server not replicating listen server player third person impacts correctly
- Bugfix: Weapon offsets were not working. Now replaced with new character info system
03/21/2017: Electric Eel 4.15
- Feature: 4.15 Compatibility
- Feature: Add Auto-Detect Video Settings option
- Feature: Add FPS Limit options to Video Settings
- Feature: Add Foliage Quality to Video Settings
- Feature: Add VSync option to Video Settings
- Feature: Make a bool for ammo display style
- Change: All Blueprints guaranteed to have return nodes
- Change: Greatly simplified Character Async loading logic
- Change: Video settings handling is far improved from hacky pre-4.11 solution to post-4.11 features
- Change: DefinedCharacters, DefinedGameModes, and AvailableTeamInfos are now Sets instead of Arrays
- Change: Change copyright notice from 2015 to 2017
- Change: Disable SteamVR and Enable OnlineSubsystemSteam by default
- Change: PlayerCharacters should have a configurable lifespan on death
- Change: Add DamageTime to LastDamageTaken struct -> When damage has occurred in game time
- Bugfix: Strange bug where network play literally falls apart, i.e. desynced movement, desycned clients, etc. Happening since 4.14, is extremely rare but those who get it are stuck without a fix.
- Bugfix: Possible HUD issue if hp is >0 and <1
- Bugfix: Rare case where tooltips for weapons are being shown while the the target weapon is pending kill
- Bugfix: Can land on your own rockets while shooting down while falling
- Bugfix: Clients sometimes not seeing correct lobby camera on join
- Bugfix: BP_DefaultImpactEffect does not clean itself up over time. It should.
- Bugfix: Titles cut off for game mode name in scoreboards due to caching of placeholder text box
- Bugfix: TestMap box points to Slack instead of Discord
- Bugfix: Bad damage info propagation
- Bugfix: Lobby screen pings are not being reflected correctly. Need to be multiplied by 4.
- Bugfix: Server name changes when player reconnects
- Bugfix: Accessed None in BP_GameState when cooking
- Bugfix: Accessed None in BP_PlayerCharacter in Main Menu
- Bugfix: Name tag rendering sometimes just wrong
Ran out of space in the 2nd post due to a maximum YouTube video embed limit, so more tutorials will bleed into this first post, but be sure to check out the second post down below.
How to configure whether or not your first spawn is in first or third person:
How to use marketplace muzzle flashes:
How to define a custom physical material asset for use in Generic Shooter: