Skip to the section labeled “Questions” if you want to see my questions in a concise form! Otherwise, if you don’t mind, you can read my introduction below.
This is my first thread at these forums, and I know my postcount may suggest I’m a noob. Well, I am a noob to the game engine and Python, but I do have plenty of knowledge on modeling and have been using Blender for over a year. I’m also not entirely new to BlenderArtists; many a Google search has turned me to threads here with the answers to my problems. But I’ve finally decided to register myself, since hoping someone else has already asked a particular question can only get me so far
Anyways, I intend to create a massive role-playing game with nice graphics, fun gameplay, and interesting storyline. But I’m no fool who thinks that’s going to be easy. I intend to work on this project for several years, and have no idea if I’ll ever even come close to finishing it. I also do not intend to start the project any time soon. First I wish to become better acquainted with the game engine, Python, and Blender as a whole. I’ve already done a few small incomplete “games” to try out the GE.
I won’t describe in too much detail the nature of the game I wish to create. I’ve already done a lot of planning for areas, characters, enemies, a little plot, and some ideas for the appearances of things in the game. However, I have nothing to show for all this - no sketches, text, models, documentation, etc… So far, it’s really been a thing I like to daydream about, and although I have seldom written any of my ideas down, I remember most of them very clearly. Rather than spending ages describing all the intricacies of my planned game, I will try to only focus on game mechanics and graphics. Unfortunately (or maybe fortunately for you guys :p) my post is limited to 10000 characters, so I will explain my planned gameplay mechanics in another post.
I’ll try to start with the easier/simpler questions first.
Text in the game engine - I noticed that text in the game engine seems to be done using a special texture on a plane. I don’t need help setting this up; I’ve seen tutorials. But I wanted to know - is it possible to use this technique with text formatting, such as bold, or different font colors, or different characters that aren’t in the default set. I know I can use whatever image I like as the character set, but I’m asking if I can have multiple of these at once (e.g. can I use bold to put emphasis on words, or have key words in a different color?), all in the same text block.
Animations for moving detailed skies - I want to know how to make a nicely animated sky, similar to how skies were very animated in Legend of Zelda: Twilight Princess. The clouds weren’t static; the sun and moon (which had phases) moved through the sky. Now, what would be my best bet for doing something like that in Blender? Surely Nintendo didn’t have a massive, high-res, animated texture with thousands of frames playing in the sky. Would it be possible to have images of clouds UV mapped to the sky, and them move them around in-game along the surface of the hemispherical sky? And the sun and moon could thus also be UV textures similarly mapped flat onto different “layers” of hemisphere and animated accordingly? And how would I go about changing the color of the sky itself? Are there any better ways to implement Twilight Princess-style skies in Blender?
Servo Motion Actuation problems
I’ve been having problems with the Servo Motion actuator in a simple (unrelated) test game I’m working on. Its parameters are: -5 Linear Velocity in the local Y direction, Proportional Coefficient: 30, Integral Coefficient: .5, Derivative Coefficient: 0. The X, Y, and Z limits are on, with min and max set to 0 for X and Z. For Y, min is 0, and I don’t know what to do for max. If it’s anything less than -152.5, the character will not move at all. If it’s any greater, the character shoots ahead at lightspeed. If I turn limiting of Y off, the character seems to slide around a little after moving. Also, I can easily ride along a wall and “stick” to it, and if I try hard enough, I can easily pass through walls. If it helps, the character’s hit area is a box of size is 2 units Z, ~.5 units Y, ~1 unit X.
Saving files - I need to know, is it possible to save files to a user’s computer, from Blender, using Python? Specifically, without asking the user “save this file?” and asking them where to put it. Also, would this behavior create problems with systems such as Windows’ User Account Control (which blocks many programs from making unwanted changes)? Or would such systems simply ask the user “Allow this program to make changes to your computer?” and then merrily let it save the file if the user accepts?
Also, what would be the best place to put game save files? In a subdirectory of the folder with the game in it? And what format/specifications would I use? Create my own “format” that’s just a thinly-veiled text file? Or is there some more advanced way to create a format for saving game files with many variables?
Also, no, I don’t need to worry about encrypting the save file. I could care less if a player really wants to cheat. I will, however, obfuscate it a little if I can, just to spite cheaters
How much of the game engine is logic bricks, and how much is Python? I guess I should admit right here; I don’t know Python at all yet. I do, however, know (Java) programming well enough to get a 5 on the AP Computer Science exam, for what it’s worth :p. I know Python’s nothing like Java, but that won’t stop me from learning it. But I wanted to know how much of a game (and what aspects) would be done via Python, and what would be done via logic bricks? I know how Python can be used in Controllers, but can Python also be used in an actuator? I haven’t found a brick for that (except for a custom Filter 2D script). And how/where are variables stored? I know there are “game properties”, but are these the only variables we can have, besides temporary variables created for the duration of a Python script? If so, where would player stats, experience, etc. be stored? And where would an inventory be stored? And how would I take all these variables from gameplay and save them to a file which can later be re-opened?
Where to start? (Please read my next post below to get a grasp of how my gameplay will work). How would I start making a game with such a massive scope as what I have planned? Should I start by first modeling a testing environment and character, and then build ground-up, with motion, some combat, and a little of the interface? And then, once I have most the interface and stats and file saving working, I can start actually creating the story? Going by what I say in my next post, what do you think would be my top priorities, and what should I put the least focus on?
Graphics - as far as graphics goes, I don’t intend to do anything much more complicated than Legend of Zelda: Twilight Princess. I’ve paid close attention to the game’s graphics, and see many things I can do. Most of the special effects seem to be particles with transparency and billboarding. But there are some things I don’t know how I would do. I already mentioned the sky issue above. I’m also wondering, however, how I would go about creating water. I want it to have an animated surface (can displacement mapping of textures work in Blender GE? Just normal mapping simply won’t cut it, I think.), and I want it to “refract” objects below the surface. It doesn’t have to be a realistic refraction; the stylized “wavy” refraction seen in Twilight Princess’s water is good enough. Similar to that effect, I’d like to have a distorting effect around fires, where it makes it look like the heat refracts the air as it would in the real world. I know the compositing nodes can do something like that with the displace/distort node, but I don’t know how to limit that to a particular area on-screen, and nodes don’t work in the game engine anyways. Also, back to the topic of water - I vaguely understand how textures and animated shapes could create a splash effect, but how would I make ripples that trail the character through water? I don’t see how on earth Twilight Princess pulled that effect off… Lastly, if I wanted Bloom effects, would I have to write a custom Filter 2D script?
Honestly, I’m sure I will have thousands of more questions along the way, but these are just to help me get started. I’m looking forward to your help! :eyebrowlift: