project-navigation
Personal tools

Author Topic: Questions and comments after running through the "Mapping for Dummies" Tutorial  (Read 5812 times)

subenji99

  • Guest
While still enjoying your work on UFO:AI, I decided to try mapping for it, as the premise that you need to stick to the 32x32 grid appealed to me as someone who's mapping experience is a quick (failed) foray into UnrealED a long time ago, and I like the idea of simpler grid-based mapping with no noding requirement.

I've therefore been running through Wanderer's "Mapping for Dummies" Tutorials (Excellent tutorials by the way, I'd have gotten nowhere without them) and, like any n00b, also have a few questions and a comment.  I'll start with the comment:

Tutorial #2 mentions loading prefab_dropship.map.  I couldn't find this file included with UFO:AI 2.1.1 or 2.2-dev - though that's probably because I didn't install the mapping tools from the installer, just the GtkRadiant tools from the website.  I eventually found and downloaded all the prefab .map files from the SVN. (which is probably better anyway, especially as I am using he 2.2-dev version to map on)  Some notice on the wiki about this, or including the prefab .map files in 0maps.pk3 may be prudent.

And my Questions:

1: I've ran into the same bug with "actorclip" as a couple of other mappers on the forums - a soldier can enter the brush, and then not be able to leave.  In every instance I've seen this on the forums, mattn has personally fixed the problem - but that doesn't help me to learn.  What am I doing wrong?  My "actorclip" brush is exactly 32x32x64 units on the square I do not want a player or monster to get to.  I also tried just in the available blank space there (except for the misc_model I'm trying to block) which worked out at 28x28x60, starting at 0,0,4 from bottom-left. (relative co-ordinates from the grid I'm working on, I can assure you it lines up properly with the 32x32 grid on grid level 6.)

2: I attempted to make the window in the shed (from tutorial #1) a breakable window - I put an array of brushes shaped in a "plus" sign, with a border, and put a smaller brush each in the 4 gaps created, which were then set to "trans33".  I selected the whole window, and made it func_breakable, knowing this would make the window as 1 func_breakable entity that would be destroyed all at once - that was the intention.  I also set "health" to 15 on the func_breakable in the entity inspector. (I also managed to add the "sound" key set to "glassbreak.wav" too, using the sound browser at the bottom of the entity inspector page.)  Unfortunately, it didn't work properly - the whole window doesn't appear in-game.  Do I absolutely HAVE to make each seperate brush func_breakable seperately, or have I missed something?

3: While creating that func_breakable mentioned, I noticed the entity inspector reports func_breakable takes a "particle" Key.  I couldn't find a list of particleid's anywhere.  Does 1 exist, or is this not implemented yet?

4: While examining the prefab_drop_firebird.map from the SVN, I noticed it has some "monster" brushes too - but only on the upper open doors.  I can't find "monster" anywhere except under Unused on http://ufoai.ninex.info/wiki/index.php/Mapping/Surface_fields. What does it do that's different from actorclip?

5: Any more tips for optimizing a map besides shaping brushes to hide unnecessary faces?  I make the optimizations as I create the brushes as I find it can be easy to miss optimizing some areas if you're going through your map again.  Best to optimize as you build.

My current .map file from running through the Tutorial:
MyLevel.map

The Yellow-and-Red half-built house is not finished, I chose those colours as a placeholder - I wanted to get the layout right first before texturing.  And it's a wierd blueprint as it's based off of my own house, which is the wierdest house I've ever seen :P

Edit:  Forgot something.  While testing my map in-game, I found that the misc_model "box1.md2" was not Z-ordered properly - the "cursor box" in particular was displayed behind it entirely.  It may have something to do with my nearby func_breakable, or the "actorclip" brush - have I done something wrong or is it a model bug?
« Last Edit: November 16, 2007, 03:38:09 pm by subenji99 »

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Quote
1: I've ran into the same bug with "actorclip" as a couple of other mappers on the forums - a soldier can enter the brush, and then not be able to leave.  In every instance I've seen this on the forums, mattn has personally fixed the problem - but that doesn't help me to learn.  What am I doing wrong?  My "actorclip" brush is exactly 32x32x64 units on the square I do not want a player or monster to get to.  I also tried just in the available blank space there (except for the misc_model I'm trying to block) which worked out at 28x28x60, starting at 0,0,4 from bottom-left. (relative co-ordinates from the grid I'm working on, I can assure you it lines up properly with the 32x32 grid on grid level 6.)

Are you talking about the actorclip for the shelf? the actorclip brush is not 32x32x64 - but 28x28x60 - see the attached screenshots

Quote
2: I attempted to make the window in the shed (from tutorial #1) a breakable window - I put an array of brushes shaped in a "plus" sign, with a border, and put a smaller brush each in the 4 gaps created, which were then set to "trans33".  I selected the whole window, and made it func_breakable, knowing this would make the window as 1 func_breakable entity that would be destroyed all at once - that was the intention.  I also set "health" to 15 on the func_breakable in the entity inspector. (I also managed to add the "sound" key set to "glassbreak.wav" too, using the sound browser at the bottom of the entity inspector page.)  Unfortunately, it didn't work properly - the whole window doesn't appear in-game.  Do I absolutely HAVE to make each seperate brush func_breakable seperately, or have I missed something?

func_breakable is an entity now - make sure that you also set the level flags (like you've done for misc_model e.g.) for the entity - not only for the brush (they are ignored now)

Quote
3: While creating that func_breakable mentioned, I noticed the entity inspector reports func_breakable takes a "particle" Key.  I couldn't find a list of particleid's anywhere.  Does 1 exist, or is this not implemented yet?

you can find the particles in base/ufos/ptl_misc.ufo - or in the 0ufos.pk3 file

Quote
4: While examining the prefab_drop_firebird.map from the SVN, I noticed it has some "monster" brushes too - but only on the upper open doors.  I can't find "monster" anywhere except under Unused on http://ufoai.ninex.info/wiki/index.php/Mapping/Surface_fields. What does it do that's different from actorclip?

looks like you have old game definitions for gtkradiant - see the attachment on how it should look like - you can grab the latest definitions from svn http://ufoai.svn.sourceforge.net/viewvc/ufoai/ufoai/trunk/src/tools/gtkradiant/ (games and ufo.game)

Quote
5: Any more tips for optimizing a map besides shaping brushes to hide unnecessary faces?  I make the optimizations as I create the brushes as I find it can be easy to miss optimizing some areas if you're going through your map again.  Best to optimize as you build.

You can disable some of the levelflags for brushes and entities that you can't see from the higher levels. E.g. activate the level 2 filter and "walk" through level 1 - all the brushes and entities that you can't see from level 2's bird view or first person view can (and should) be disabled (in radiant). you can type r_speeds 1 to game console to print some statistics in-game.

Quote
The Yellow-and-Red half-built house is not finished, I chose those colours as a placeholder - I wanted to get the layout right first before texturing.  And it's a wierd blueprint as it's based off of my own house, which is the wierdest house I've ever seen :P

Please add a door lintel even if there is no door in between the rooms. it looks better and we are using it all over the other maps, too

Quote
Edit:  Forgot something.  While testing my map in-game, I found that the misc_model "box1.md2" was not Z-ordered properly - the "cursor box" in particular was displayed behind it entirely.  It may have something to do with my nearby func_breakable, or the "actorclip" brush - have I done something wrong or is it a model bug?

to be honest - i don't understand this question

[attachment deleted by admin]

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
i suppose the monster is now the weaponclip - if i recall correctly

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
and another little thing:
your window-frame is thicker than the window - so you can reduce the brushcount by using only one brush. this will not produce z-fighting - except if you plan to make every little single frame destroyable, then you'll need all four. but if you convert this to one func_breakable in the final map you can also just use one brush

subenji99

  • Guest
Ok, I've played around some more, got the prefab stairs in place, (that was easy!  I was expecting all manner of trouble, like getting up the stairs from underneath and such!) re-scaled the whole building to more accurately match my home, and so on - but I'm still having some trouble.  I've updated the MyLevel.map file, the link hasn't changed.

Actorclips in the shed:
The one covering the box near the window doesn't do anything - Both at 28x28x60 and 32x32x64.  The one at the shelf still just traps a soldier, even at 32x32x64 dimensions.  I deleted and rebuilt the brushes, just to check.  The oddest thing was I added a new actorclip brush to prevent a soldier walking through the misc_model bed on the second floor - that 1 works correctly. The dimensions of that were 96x64x64.

Func_breakable:
I got this working fine!  It doesn't play a sound on breaking, but I did get particles to display on destruction after being pointed to the files.  Shame there isn't a "breaking glass" particle yet.  I also took your advice and made the actual transparent window just 1 brush.  I built the parts seperate before to prevent brush intersection, but you've advised me not to do so - as long as the surrounding brushes are bigger. (I think that was your meaning)

"monster":
I updated the game definitions for GtkRadiant, thanks.  Also, it was "weaponclip" that is shown as "monster" on the old definitions.

Optimizing:
Thanks for the tip on optimizing, I'll be sure to walk through the map checking once it's complete.  I'm not sure how much I could hide with levelflags on a map this small, but it's a very good tip to remember for larger maps.

Door lintel:
I'm not sure quite what you meant by that, but I'll have a look at the pre-made .map files on the SVN to see what you mean.  I tried using brushes with the surface property "skip" flagged, but that crashed the compiler.

Box1.md2:
Screenshot It's probably not even worth worrying about, it just stood out at me when I first saw it.  Edit: After looking through farm01d.map, I'm going to make that box out of a brush instead of it being a misc_model.  That should fix both the odd selection box and the actorclip brush with that spot, and is the way I should have made a box in the first place.

New problem I discovered:
I tried copying a prefab bed from prefab_household.map into my map instead of using misc_model, but any position shifting to the copied bed mess up the texturing.  While with some messing in the surface inspector I was able to get the topside texture re-aligned, the matress edges remain white no matter what settings I tried.  Was I doing something wrong here?

I also want to thank you for putting up and helping me, and also all inexperienced mappers with these issues.  Without this level of help, I'm sure many people would just get infuriated and give up.
« Last Edit: November 16, 2007, 03:58:07 pm by subenji99 »

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
New problem I discovered:
I tried copying a prefab bed from prefab_household.map into my map instead of using misc_model, but any position shifting to the copied bed mess up the texturing.  While with some messing in the surface inspector I was able to get the topside texture re-aligned, the matress edges remain white no matter what settings I tried.  Was I doing something wrong here?

there is a feature in radiant called texture look - it's the little yellow lock symbol - turn it on :)

subenji99

  • Guest
 ;D Thanks a lot!  All these little tips that I didn't know - I should read GtkRtadiant's help files more thoroughly!

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
no problem, just ask - i'm glad that someone tries to make a map

Offline BTAxis

  • Administrator
  • PHALANX Commander
  • *******
  • Posts: 2607
    • View Profile
Door lintel:
I'm not sure quite what you meant by that, but I'll have a look at the pre-made .map files on the SVN to see what you mean.  I tried using brushes with the surface property "skip" flagged, but that crashed the compiler.

It's a little brush over the doorway. It serves no purpose, but it makes the doorway more "doorwayey".