NEOTOKYO°

NEOTOKYO°

99 ratings
Mapping for Neotokyo
By niar
Guide on setting up the SDK for Neotokyo mapping
2
   
Award
Favorite
Favorited
Unfavorite
Introduction
Neotokyo is a Source game, which opens up a lot of possibilities for customization, such as creating your own levels.

This guide explains setting up the Hammer level editor (for the Windows OS) for creating Neotokyo maps.

Optional: Install helper
I've made an experimental install helper GUI app, which will interactively guide you through this entire setup. You can download the app from this link[github.com] if you'd like. If you run into problems with the app, please comment on this guide (or file a bug report[github.com]) so I can fix it!



If you don't want to use the app (or it doesn't work), please see the rest of this guide to set things up manually.
Install Neotokyo
https://store.steampowered.com/app/244630/NEOTOKYO/

NOTE: You will also have to actually launch Neotokyo at least once on the PC before continuing!
Install Source SDK
Enter the following URI to your browser:
steam://install/211

Or to install it manually, go to: Steam Library -> Tools -> Source SDK

The SDK contains the Hammer level editor and some other tools.
Install Source SDK Base 2006
Enter the following URI to your browser:
steam://install/215

Or to install it manually, go to: Steam Library -> Tools -> Source SDK Base 2006

You don't actually need this tool to play the Steam version of Neotokyo anymore, but it contains some additional required map building tools.
Download Neotokyo FGD (optional)
Note: the required FGD file is already included in a Steam install of Neotokyo, in the path:
Steam\steamapps\common\NEOTOKYO\bin\neotokyo_pub.fgd

So you don't need to manually download it anymore.

It's also available for download from ModDB here. This ModDB download also includes some official NT map project files. These map files can be useful as reference eg. for finding good room heights and lighting values or other kinds of reference, when making your own levels.

Further reading for the curious (not required):
Configure Source SDK, part 1
Next, you'll have to create a "neotokyo\mapsrc" folder path, which will later get defined in the "MapDir" entry of the GameConfig.txt.

You can do this by navigating to the "Steam\steamapps\common\sourcesdk_content" folder location, and right clicking to create the new "neotokyo" folder, and then a "mapsrc" folder inside it.

 
This newly created path is the location the level editor will be set up to save your map project files in. It could be any folder, but this path is the conventionally used location for such files in the Source engine games.
Configure Source SDK, part 2
Now, go to Steam\SteamApps\common\NEOTOKYO. Create a new folder called "mapping".
In this folder, create a new text file called GameInfo.txt. If you have known file extensions hidden in Windows[support.microsoft.com], be careful not to accidentally name it "GameInfo.txt.txt". Open the file in a text editor, and paste in the following:
"GameInfo"
{
game "NEOTOKYO°"
title "neatbkyoc"
title2 ""
type multiplayer_only
nomodels 0
nohimodel 1
nocrosshair 1

"developer" "Studio Radi-8"
"developer_url" "http://www.neotokyohq.com"
"icon" "nt"
"manual" "http://www.neotokyohq.com"

FileSystem
{
SteamAppId 215 // This will mount all the GCFs we need (240=CS:S, 220=HL2).
ToolsAppId 211 // Tools will load this (ie: source SDK caches)
// to get things like materials\debug, materials\editor, etc.

//
// The code that loads this file automatically does a few things here:
//
// 1. For each "Game" search path, it adds a "GameBin" path,
// in <dir>\bin
// 2. For each "Game" search path, it adds another "Game" path
// in front of it with _<langage> at the end.
// For example: c:\hl2\cstrike on a french machine would get a
// c:\hl2\cstrike_french path added to it.
// 3. For the first "Game" search path, it adds a search path
// called "MOD".
// 4. For the first "Game" search path, it adds a search path
// called "DEFAULT_WRITE_PATH".
//

//
// Search paths are relative to the base directory, which is
// where hl2.exe is found.
//
// |gameinfo_path| points at the directory where gameinfo.txt is.
// We always want to mount that directory relative to
// gameinfo.txt, so
// people can mount stuff in c:\mymod, and the main game
// resources are in someplace like
// c:\program files\valve\steam\steamapps\<username>\half-life 2.
//
SearchPaths
{
Game |gameinfo_path|..\NeotokyoSource
Game hl2
}
}
}

Save and close the file after pasting – you don't need to edit this file's contents at all.
Configure Source SDK, part 3

Before modifying the next config file, launch "Source SDK" from Steam Library -> Tools once. It should open up a green menu window. Launching the SDK for the first time will create some required config files in case they were missing. If you get a "copying files - please wait" prompt, wait until it is completed before continuing. For now, we just wanted to generate the configs, so you can completely ignore the menu and quit the SDK with the X button at the top-right of the green window.

Go to Steam\steamapps\common\SourceSDK\bin\ep1\bin, and you should find a GameConfig.txt file. If it doesn't exist, make sure to run (and close) the Source SDK tool at least once to generate the file, as described above. Open the file in Notepad or other text editor of your choice.

Remove the GameConfig.txt file's contents, and paste in the following:
(If you already map for other games using the SDK, just edit the config to your preferences instead of removing everything.)

NOTE! You will need to REPLACE all paths that start with a FIXME with the correct locations for your computer system! There are 9 lines of FIXMEs to be fixed, in total.

"Configs"
{
"Games"
{
"NEOTOKYO"
{
"GameDir" "FIXMEc:\path\to\steam\steamapps\common\neotokyo\mapping"
"hammer"
{
"GameData0" "FIXMEc:\the-location-of-your-neotokyo_pub.fgd"
"TextureFormat" "5"
"MapFormat" "4"
"DefaultTextureScale" "0.250000"
"DefaultLightmapScale" "16"
"GameExe" "FIXMEc:\path\to\Steam\steamapps\common\NEOTOKYO\hl2.exe"
"DefaultSolidEntity" "func_detail"
"DefaultPointEntity" "info_player_start"
"BSP" "FIXMEc:\path\to\Steam\steamapps\common\SourceSDK\bin\ep1\bin\vbsp.exe"
"Vis" "FIXMEc:\path\to\Steam\steamapps\common\SourceSDK\bin\ep1\bin\vvis.exe"
"Light" "FIXMEc:\path\to\Steam\steamapps\common\SourceSDK\bin\ep1\bin\vrad.exe"
"GameExeDir" "FIXMEc:\path\to\Steam\steamapps\common\NEOTOKYO"
"MapDir" "FIXMEc:\path\to\Steam\steamapps\common\sourcesdk_content\neotokyo\mapsrc"
"BSPDir" "FIXMEc:\path\to\Steam\steamapps\common\NEOTOKYO\NeotokyoSource\maps"
"CordonTexture" "tools\toolsskybox"
"MaterialExcludeCount" "0"
}
}
}
"SDKVersion" "3"
}

Save and close the GameConfig.txt once you're done.
Configure Source SDK, part 4
Launch the Source SDK Base 2006 from Steam library's tools section. Once it opens to the main menu, close it. This will generate some necessary files.

Configure Source SDK, part 5
Now, go to Steam Library->Tools and launch Source SDK again.

A green menu should once again show up. Select Engine Version: Source Engine 2006, and Current Game: NEOTOKYO. Double-click Hammer Editor under the Applications tab.



Hammer Editor should now launch without error messages, and be set up for Neotokyo mapping. If not, check the troubleshooting section below and/or ask in the comments.

What now?
NT mappers are the most active in the ANPA Discord's Architects channel, feel free to join!

We also have a Steam group dedicated to Neotokyo mapping. Feel free to join and discuss level design, ask for help and testing. There is also a "Custom Content" sub-forum at the ANPA group for promoting your maps.

You should glance at these 2 if you are new to Hammer (there's no need to fully read them just yet, however)! Just having a rough concept of these two problems in your mind can save you from a lot of headache if/when you run into related trouble with your levels later on.
- How visibility works in the Source engine
- About VIS leaks

After that, internet is full of tutorials for mapping using the SDK's Hammer Editor. Here are a few resources for you to get started:

- Valve Developer Wiki, very useful for reference. Covers almost every entity at a basic level, and also has articles on specific subjects like lighting and design.
- Hammer basics, a video tutorial if you're into those. Not Neotokyo specific, but the vast majority of the concepts covered will translate over.

Here are the main Neotokyo related point entities you might come across:

- info_player_attacker - Team spawn, Jinrai starts here the 1st round.
- info_player_defender - Team spawn, NSF starts here the 1st round.
(Need at least 16 spawns per team, otherwise players may spawn from the spectator spawn position on full server. If you still have people spawning in weird positions, try moving the spawns further apart from each other and map geometry.)

- info_player_start - Start camera position, spectator spawn position.
- neo_bloom_controller - Control recon nightvision intensity. Good value depends on your map lighting.
- neo_game_config - Set game mode. CTG for Capture the Ghost, TDM for Team Deathmatch. VIP not supported.
- neo_ghost_retrieval_point - Ghost capture zone. Team and radius controls.
- neo_ghostspawnpoint - Ghost spawn point. Spawn location is chosen randomly from all of these.
- neo_controlpoint - Not supported.
- neo_escape_point - Not supported.

The Hammer editor knows about these Neotokyo specific entities by utilising the Neotokyo FGD covered earlier. If you're not seeing them correctly in the editor, then your FGD configuration is probably incorrect—please double check your configs, and ask if you can't figure it out!
Troubleshooting
"Failed to load the default scheme file..."
Something went wrong with the configuration. Double-check your FGD, GameConfig, and GameInfo locations and contents. Also make sure you have launched and closed all of "Neotokyo", "Source SDK", and "Source SDK Base 2006" at least once on that PC before using the SDK. If it still doesn't work, try verifying the file integrity for all three of the Steam downloads.

"gameinfo.txt doesn't exist in ..."
Confirm GameInfo.txt and GameConfig.txt contents. Make sure the file extension is correct (not .txt.txt for example), having file extensions always visible may help (search "Show or hide file extensions" in Control Panel).

"The configuration information for the game you're trying to edit is invalid or missing."
Make sure you have launched and closed all of "Neotokyo", "Source SDK", and "Source SDK Base 2006" at least once on that PC before using the SDK. Also double check the GameConfig.txt file path, and check its contents for typos or incorrect file path values.

Hammer goes unresponsive when compiling!
This is common behaviour. Just leave it alone for a few minutes, it should become responsive again once it's completed compiling. If you wish to abort the compile, open up the task manager (ctrl+shift+esc), and terminate "vvis.exe" and/or "vrad.exe", depending on which stage of the compile it's currently at.

My PC goes unresponsive when compiling!
The vbsp/vvis/vrad compile stage tools each support the "-low" argument, to make them run at lower CPU priority level. You can specify the argument by using the expert compile mode, and modifying the command parameters for your desired compile configuration (probably "Default", by default).



How do I auto-launch Neotokyo after compile?
As of October 2022, this guide has been updated with an improved way of mounting the game, which should make it compatible for auto-launching during compile. If you've set up Hammer before that, you may wish to re-do your setup to fix this.

My level has no lighting even after I added some!
- Make sure you compiled with VRAD enabled.
- Make sure the in-game client cvar "mat_fullbright" is set to 0.

Ghost doesn't spawn!
Both teams need at least 1 player for the ghost to spawn, use the console command bot_add to spawn bots. Also make sure the game mode is properly set with a neo_game_config entity to CTG; the ghost will not spawn if game mode is TDM.

My level has bad framerates / takes forever to compile!
Read this. Saves you from a lot of headache when moving on to make more complex maps.

It still takes quite a while to compile although I've optimised properly.
Try setting VIS to "fast". This will make the visibility calculation part of compile cut some corners for faster compile times. You can also set RAD to "fast" for less accurate, quicker lighting calculation. You can also set RAD to "no" to skip lighting stage altogether if you aren't currently working with lighting. Having no light entities in the level will also automatically skip RAD. I would advice against setting VIS to "no" unless you know that's what you want. If you're curious about what the compile actually does, see this article.
Remember to always compile your release versions with both VIS and RAD set to "normal" for optimal lighting quality and map performance. You should not compile HDR lighting, as Neotokyo doesn't support it and it increases map size.

Something else
Ask away!
235 Comments
ADAM96 Nov 15, 2022 @ 3:49pm 
sorry, i forgot i made this comment, i eventually got this to work after checking my game configurations
niar  [author] Nov 15, 2022 @ 3:47pm 
I notice you mentioned trying the troubleshooting steps, but could you confirm if you also followed this guide (as opposed to some other guides that might use different paths) for setting up the tools? If not (or if you did the setup before October when I made some changes to the guide), I would recommend setting up from scratch.

Otherwise, I can take a look at your configs for any errors if you upload your GameConfig.txt and GameInfo.txt here as pastebin.com links.
ADAM96 Nov 15, 2022 @ 2:02pm 
every time i open hammer for this game, the default scheme never loads even if i verify the integrity of the files and doing everything else mentioned. also, it says that it cant find editor/wireframe, resulting in no grid lines anywhere in the editor. placing down any entity with a model results in it saying that it cant find the model used and error.mdl. does anyone have a fix? going to multiple servers yielded nothing
niar  [author] Nov 8, 2022 @ 2:31am 
Cool, glad you got it working :summer2019cone:
angelhyacinth Nov 7, 2022 @ 3:44pm 
for future reference, clearing the download cache allows you to reinstall and properly run base 2006. this fixed the issue for me, thank fcking god. thank you for the guide. :Her5:
angelhyacinth Nov 7, 2022 @ 3:33pm 
okay, yeah, i think i've found the issue. i don't have a source sdk base folder in my steam directory and can't seem to open base 2006 because of this. that brings on a whole new range of issues but at least it's not neotokyo related. thanks for your help rain lololol <3
angelhyacinth Nov 7, 2022 @ 2:32pm 
vv meant to add this to my last post -- creating a new map in hammer 2006-NT still gives the same "failed to load default scheme file" error. if there are any other files you'd like to take a look at, lmk.
angelhyacinth Nov 7, 2022 @ 2:30pm 
alright, so i think we're getting somewhere at least. i followed the updated guide exactly as written up to the point where it instructs to open source sdk 2006. when i run it from my library, the "launching" box shows up for a fraction of a second, then closes without the program ever showing up in my system tray.
this may be a larger issue than i thought that may not even have anything to do with your guide, unfortunately. i'll look into this issue separately. :Her3:

i ran oilstain as a test, and only one map view showed anything. most textures were missing and appeared as a black/pink checkerbox even though the map shows up just fine in-game.:shodan:
niar  [author] Nov 7, 2022 @ 4:19am 
To verify it's working, you can download the NT SDK/FDG ( https://www.moddb.com/mods/neotokyo/downloads/nt-sdk-lite-10232009 ) , and open the .vmf map project files incuded, and fly around the maps to see if anything is broken/missing.
niar  [author] Nov 7, 2022 @ 4:14am 
Your configs are correct, except for the "GameExe" entry in GameConfig.txt, which should specify the "...\hl2.exe" executable name after the path. But I don't think that's the issue preventing the editor from launching.

I ran the entire guide setup inside a clean Windows virtual machine install using those pastebin configs, and indeed it seems there's a problem with the guide. To get things working, do: 1) Launch & quit Neotokyo, 2) Launch & quit Source SDK, 3) Launch & quit Source SDK Base 2006 (this step was missing from the guide), 4) confirm the GameConfig.txt contents are still correct (the Source SDK launcher sometimes overwrites the contents on errors). 5) It should work now.

TL;DR: it seems that you actually have to also launch the "Source SDK Base 2006" at least once for things to work, in addition to NT & Source SDK. I'll have to fix the guide to include this missing step. Sorry about the trouble, hopefully this will fix things for you.