A few of the things I can't get to work:
1) Warping within a map. I've followed the directions in the wiki, but apparently I'm doing something wrong. I can warp between maps, but not from one place to another within the same map. How do I do that?
You need to use "warplocalnode" instead of "warp" as your node name. The format looks like:
warplocalnode TARGET-NODE in|out
where TARGET-NODE is the name of the node to warp to, and the last parameter is "in" if you're entering a room, "out" otherwise. (The last parameter is used to adjust Naija's position on the world map -- when warping to an "in" node, the world map uses Naija's previous position as the location to display rather than the current position, and holds it constant until the player warps to an "out" node. If you're warping between two "outside" parts of the map, this can be "out" in both places. This probably doesn't matter for mods since the world map isn't supported for them, but just for reference.)
Take a look at Mithalas01 in the original game data (use the
Native mod to load the game data in the scene editor) for an example of how it's used.
2) Getting a 1024 x 1024 map to work correctly that is titled something other than "main." The maps show up fine in the editor, but when you try to play in them, you can only access a 512 x 512 segment. I've finessed this by calling my second map "mainmz" and my third map "maindeeps" but can anyone tell me how to access the full map without that gimmick?
That sounds like a camera bounding issue. By default, the game constrains the camera to the size of the obstruction grid, which is generated from the map template file -- this means that if the right or bottom edge of your template is completely empty, the camera will be constrained to a smaller area. (This is based on reading the source code; I haven't actually tried creating a map from scratch myself.)
The screw-it-I-don't-care solution is to open your map file in a text editor and set the cameraConstrained attribute of the <Level> tag to 0:
<Level ... cameraConstrained="0" ... />
(add the attribute if it doesn't already exist, otherwise change the value that's already there). In this case, make sure you have enough buffer at the edges of the map so the player can't scroll off the edge.
3) When I use the node "pe bubbles 01" I get the little blurry bubbles as in the title screen. But in the native mod "pe bubbles 01" gives the nicely defined bubbles with highlights that react when Naija moves through them. How can I get the clearer bubbles?
Try "pe bubbles01" without the space between "bubbles" and "01". As a side note, you can check the textures used by any of the particle effects by looking in the data/particles directory (look for lines starting with "Texture =").
Something I'd like to know:
Where does the script for an entity grab the graphic for that entity? Eventually I'd ilke to script new entities, but until I learn how, how do I put my own graphic on an existing one?
The texture used by an entity is entirely up to the script itself. There are two primary ways of doing it:
- Specify the texture name in setupBasicEntity(). This is good for simple entities that only need a single texture -- see e.g. raspberry.lua from the game data (in scripts/entities).
- Use a sprite definition file with entity_initSkeletal(). This is good for more complex entities with multiple parts -- see e.g. grouper.lua from the game data. Sprite definition files are stored in data/animations, or in the "animations" directory of a mod.
Consequently, you have to either make a copy of the script and change the texture name, or else put a replacement texture in the "graphics" directory of your mod -- this naturally has to be the same size as the original.