Please login or register.

Login with username, password and session length
Advanced search  


For WME related articles and tutorials visit WME Resource Center.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - metamorphium

Pages: 1 ... 98 99 [100] 101 102
General Discussion / Re: What do you think about this scene?
« on: December 02, 2004, 09:44:57 AM »
Hi Martin,

Really nice modelling work.

I'd recommend posting this image at forum places like They are blender oriented and you will get excellent improvement tips from blenderists, who are exceptionally helpfull. I'd just recommend for myself working on texturing. Tree trunks would accept some bump mapping as well as pavement tiles. (It looks very *flat* as it is now) Pillar texture looks not so good. When I saw it for the first time, it looked to me as if you've chosen incorrect mapping type in material window.

One excellent texture resource is here, where you can find almost anything:

You should IMHO also try to incorporate Ambient Occlusion (if it's not already there) which would give much better look to the scene in general. Anyways I am not graphic artist, so feel free to ignore my comments alltogether. :)

Ah and the light seems a bit inconsistent. I was trying to figure out where the SUN is and didn't came to successful conclusion.

Just my 2 cents as an amateur blenderist.

EDIT: Why did you say, bump mapping is not advanced in blender? You can use up to 8 texture channels, so you can have even 7 different bump maps if you are so inclined. :)

General Discussion / Re: WME 1.3
« on: November 30, 2004, 10:38:30 PM »

 ::rock ::rock ::rock

Edit: Hey.  just came through the 3d scene process and it rocks even more. You're a genius.  ::thumbup

General Discussion / Re: Adventure games and Reviewers nowadays
« on: November 29, 2004, 12:36:13 AM »
You are right. But AdventureGamers and JustAdventure are something like "Elite class" unfortunately visited by people who already are familiar with adventure genre and go there knowing what to find. My target was meant to be more localized. I believe this problem begins in our national gaming web sites. Unfortunately this is my sad experience.

btw. black mirror uses sprites for characters, so WME is giving this option right now. :)

General Discussion / Adventure games and Reviewers nowadays
« on: November 28, 2004, 10:04:20 PM »
Hi fellow muters. :)

Do you remember the old times of IF? I remember it like today. I was standing on the rainbow in Zork 1 figuring out what to do. I was very young I had a lot of time and finally I found out (after weeks) that I have to type a command "wave scepter" which would split the color spectrum etc... This was a time of word forging. Operation systems were not THAT clickable and we had to figure out by ourselves how to load himem.sys and emm386.exe (Bill's wraiths) so our game would work properly. We had to think a lot and this was fun.

We played these games long before "point and click" system and it built up our imagination. So when the graphics came in, we were able to imagine a whole lot of details into it (I can't forget playing Elvira 2 on C64, which was very scary) even without explicitly showing us. I believe this is the root of our ability to percept a game as excellent even if it lacks AAA graphics. We were able to imagine lipsync even when character just moves his mouse and there is a text bubble above. Text bubble, which can express emotions.

Unfortunately, as technology grows, it also provides some "comfort" for us what is certainly double-sided. Nowadays installations are done by clicking on next button, game doesn't require anything special to run (except sometimes latest hardware :)) and we are set. With this simplification people also simplify their gaming habits. They are looking in walkthrough when their first idea doesn't work, they despise with ideas which are not obvious, they never resort to make some paper notes etc. But the worst problem is that they NEED to have everything served on a silver plate. I am now speaking slightly in the "generalistic" way, but you will get my reason later. With easy access to pirated copies, many persons are fed up with the latest games without giving a special treatment to each of them.

This causes in turn large companies to produce mindless FPS games (with a few honorable exceptions), countless Dune 2 / Warcraft variations, Soccer games more of the same etc. Adventure gaming has been put behind, but it is NOT dead.

But there is a group of people who is obviously trying to kill it. These are unfortunately reviewers. With Legend, Sierra, LucasArts and others out of Adventure game bussiness, the only persons who can market the games are reviewers for there is no longer high budget in AG industry. But reviewers, being more and more of the above mentioned sort, don't care much about games as it would seem. They care about graphics, about voice overs (if Joe has british or Californian dialect), nitpicking here and there. For common reviewer would be perfect if this adventure game ran on Source engine and brought at least 3 groundbreaking technology advancements.

How can anyone be so stupid to think, that there actually IS that kind of money in Adventure gaming. So the conclusion of this? The only way out are Indie games. But we have to work on rising the "Independent" from the commonly assigned status crappy. Lot of us worked on projects which already accomplished this, but first I believe we need to find grounds for our games. That's  why I got this very weird idea of writing an open letter to gaming sites with some of formerly mentioned statements. The point is to point out for reviewers, that when they judge independent titles (more or less every adventure game nowadays except a few pure adventure exceptions like great TMOS or Silver Earring) they have to choose FAIR criterions.

1, Every developer is responsible for a STORY and ATMOSPHERE. There is no excuse for badly thought of story or plot holes. On the other hand, reviewer has to accept that he sometimes is not able to understand everything, just because he is maybe too used to "Postal" games :)
2, Every developer is responsible for Puzzles and interface design. Again, no excuse there, because there is no reason to put sliders in every adventure game available. :P
3, Voiceovers are mandatory! Better than bad voiceovers are text bubbles. And profi actors are expensive. Without proper contacts, this is very hard to manage for Indie teams. And bad voiceovers really spoil the game. BUT reviewers scorns games without voiceovers and with bad voiceovers even more. :)
4, Graphics is the most expensive part of the game producing. Starting from GFX software going through artist hiring etc. etc. This is achilles heel. We have tons of programmers, musicians, writers. We don't have google of quality gfx artists who would work on indie game for some future vague promise of money income. So we are using what we have. Sometimes it's great sometimes not so, but we don't have budgets of LucasArts to hire team of *ARTISTS*.

So the bottom line is - reviews of the next wave of adventure games should be focused on Story, design, puzzles, dialogues and fluidity NOT on used technology. Think of DarkFall 1 (when it was released it was terrible scorned by *not-naming-who* only to be later recognized as a real hit. The reason for bad review was just the static gfx of Myst like engine even when it was so atmospheric and well rendered by a real artist)

I hope it makes a sense at least a bit and for anyone who would comment this and add something I'd be really happy. I was provoked by reactions of some of adventure reviewers I found on various forums. Also we discussed this with Tol (Hi Tol :)) both of us angry about some of those ascpects.

Ok, that's it. Steam is out. Thank you for wasting your time by reading this. :)

PS. Don't expect to be successful with your adventure game when there is 10000 idiots yelling at forums that HalfLife 2, Moment Of Silence etc. sucks. LOL

Technical forum / Re: Text entities
« on: November 08, 2004, 11:38:30 PM »
I'd say the biggest advantage with text is if you have lots of it.
Size DOES matter... (at least in MB on a 56 or 28 connection...)

On the other hand... how do you do with pictures in books and such?

One idea is to have a text built from several entities, like six on one page
and then you can choose if they have to be text or images.

Oh how messy this is... I can see why the pre-rendered hand-made 16th century manuscript is waaay cooler and simpler. At least providing the user can find a time machine....

And the next think is typesetting. Windows text functions looks unusable for book-like typesetting. So it's not believable at all if you use "live text". It all the time strikes me when I see books in games with such a text. It's not about font but about the actuall typesetting. Hey mnemonic, wouldn't you want to integrate TeX in some way. LOL (Just a joke)

Size is not an issue because we are more considering how many CD roms the game will be than if it will be downloadable. :)

Scripts, plugins, utilities, goodies / Re: Dijkstra puzzle
« on: November 08, 2004, 11:28:34 PM »

I made something for your better understanding.

I stripped the puzzle from it so it's just moving tiles, but you can see the implementation.

Just click on tile and then anywhere on grid.


General Discussion / Re: #600 - The unofficial introduce-yourself thread
« on: November 07, 2004, 11:42:10 AM »

I'm 25.
From Czechia.
I'm PhD. student of theory of composition. Working as a musician, programmer and network administrator.
and also can't decide about the trinity. Maybe Anachronox (if you excuse the RPG part) for it's probably my no. 1 of all games, Death Gate and Blue Ice.

Independent top 3 would be:

Dark Fall
Dark Fall 2

Technical forum / Text entities
« on: November 06, 2004, 08:19:48 PM »

just a quick question. What is a preffered way to create a large text entities eq. books, manuscripts, etc?

I am now thinking advantages of live text against images and vice versa.

If live text how would you handle "typesetting". Well, maybe the images for each page are the best thing but then,
load it and hide / show pages (with some animation) or make changescene with custom changescene animation?

Thanks in advance for tips.

Scripts, plugins, utilities, goodies / Re: Dijkstra puzzle
« on: November 06, 2004, 02:15:47 PM »
Sure could be the cause although I tried to say that it's puzzle with tiles :)

Feature requests, suggestions / Music delay
« on: November 06, 2004, 12:17:45 PM »
I would really like to see this feature, which would be very reasonable IMHO - if Game.PlayMusic has next optional parameter delay before loop. This would be in seconds.

It's generally a good idea not to let the music play all the time and especially for smaller tracks it's good to let them stop and only the background sound effects would sound for some time.

I know it's easy to keep track of this in code, but cleaner way would be encapsulation with music method.

Just a thought while coding.

Feature requests, suggestions / WME splash screen
« on: November 06, 2004, 12:11:20 PM »

what about some Powered by wintermute nice splashscreen? I'd definitely include it. :)

Maybe we can make some unofficial contest.  ::rock

Scripts, plugins, utilities, goodies / Dijkstra puzzle
« on: November 06, 2004, 10:52:58 AM »
Hi muters.

I have a puzzle in which I have a grid 8x8 in which there are a few tiles. They can be moved according to the puzzle rules and the point is that if I choose tile start and tile destination, it has to slide around obstacles via the shortest path there (if it's of course possible).

Several of you told me, why not use built in path finding algorithm? Well I didn't found a way so maybe I spent some extra time reinventing the wheel. On the other hand I managed to hack Dijkstra's algorithm (breadth-first search) to work with wintermute and its single dimensional arrays. From my tests in 8x8 grid the worst case was 16 different paths with 10 elements, but usuallly it's much less. 

For sake of speed I am using the array pathes which is devided to segments (in my case I use 64 nodes for each path), but all this is easily tweakable with the constants.
I cleaned and commented the code (from the mess Mnemonic saw  ;D ) and here it is for anyone who would need something like this.

Function for calling are initsearch(); and findroute(TileX,TileY);  Source is ActiveTilie.x and ActiveTilie.y;

Enjoy :)

Code: [Select]
global PuzzleArray;                                       // The map with obstacles (0 is free, !=0 is obstacle)
var open = new Array(64);  // Open set for grid (max lenght of longest path)
var pathes = new Array (1300); // All Pathes are stored here
var pathcnt = 0; // Number of pathes
var correct_path = 0; // When path found, this one is the rightful

var ActiveTilie;                // Active Tile

ActiveTilie.number = 0; // Info about selected Tile
ActiveTilie.x = 0;                                       
ActiveTilie.y = 0;

global tilies; // Definition of tilies as appears in scene_init

const GRIDX = 8;                 // Grid Size X
const        GRIDY = 8; // Grid Size Y
const OPENSIZE = 64; // Size of OPEN array

// This is called whenever we need to use search

function initSearch()

correct_path = 0;
for (var a=0;a<OPENSIZE;a=a+1)
open[a] = 0;

for (a=0;a<1299;a=a+1)
pathes[a] = -1;

pathcnt = 0;


// Function for deleting path, which is a dead end

function deletepath(pathc)
var startpath = pathc*OPENSIZE;
var lastpath = (pathcnt-1)*OPENSIZE;

if (pathcnt == 1)
  // We have no more paths. There is noway to run...
pathcnt = 0;

if (pathc == (pathcnt-1))
   // Deleted path is the last one
   pathes[startpath] = -1;
   pathcnt = pathcnt - 1;
 // Move the last part in place of deleted.
while (pathes[lastpath] != -1)
  pathes[startpath] = pathes[lastpath];
  lastpath = lastpath + 1;
  startpath = startpath + 1;

pathes[startpath] = -1;
pathcnt = pathcnt - 1;

// Discard last node for path branching

function popnode(pth)
var spos = pth*OPENSIZE;

while (pathes[spos] != -1)
spos = spos + 1;

pathes[spos-1] = -1;

// Add note on top of path stack

function addnode(pth, x, y)
var spos = pth*OPENSIZE;

while (pathes[spos] != -1)
spos = spos + 1;

if (spos>((pth*OPENSIZE) + OPENSIZE-1))
// Too long path, it would overlap to different path = dead end

pathes[spos] = y * GRIDY + x;
pathes[spos+1] = -1;

// Add path to path repository

function addpath(oldpath,px,py)
  pathcnt = pathcnt + 1;
  var startpath = (oldpath*OPENSIZE);
  var newpath = (pathcnt-1)*OPENSIZE;

  while (pathes[startpath] != -1)
pathes[newpath] = pathes[startpath];
newpath = newpath + 1;
startpath = startpath + 1;

  pathes[newpath-1] = -1;

// Returns last node from path

function getLastNode(pths)
var spos = pths*OPENSIZE;
while (pathes[spos] != -1)
spos = spos + 1;

var news = pathes[spos-1];
return news;

// Gets tile number from Puzzle Grid

function getTile(x,y)
return PuzzleArray[y*GRIDY+x];

// We have to check if two tiles (sx,sy) (dx,dy) are adjacent

function isAdjacent(sx,sy,dx,dy)
if((dx < 0) || (dx >= GRIDY))
return false;

if((dy < 0) || (dy >= GRIDY))
return false;

if(sx == dx)
// The squares are adjacent if the source square is above the destination square
if((sy - 1) == dy)
return true;

// Or if the source square is below the destination square
else if((sy + 1) == dy)
return true;
else if(sy == dy)
// The squares are adjacent if the source square is left of the destination square
if((sx - 1) == dx)
return true;

// Or if the source square is right of the destination square
else if((sx + 1) == dx)
return true;

return false; // CELL (dest_x, dest_y) IS NOT adjacent to CELL (src_x, src_y)


// We have to check, if tile x,y is Open and not solid

function isOpen(x,y)
if( PuzzleArray[y*GRIDY+x] != 0 )
return false;

if(open[y*GRIDY+x] != 0)
return false;

return true;

// This is the Dijkstra's guts.

function findroute(TileX, TileY)

var actpath = 0; // Actual processed path.
var opener = 0; // Indicates how many branches are from current node. If 0, delete path.
var tmp_node;  // value (global value), x,y

// Create the first path

open[ActiveTilie.y*GRIDY + ActiveTilie.x] = 1;
pathcnt = 1;

while (pathcnt > 0)

// Get last node from actual path

tmp_node.value = getLastNode(actpath);
tmp_node.x = tmp_node.value % GRIDY;
tmp_node.y = ToInt(tmp_node.value / GRIDY);

opener = 0; // We have no open ends yet.

for (var ox = tmp_node.x  - 1; ox < tmp_node.x + 2; ox = ox + 1)
for (var oy = tmp_node.y  - 1; oy < tmp_node.y  + 2; oy = oy + 1)
if (isOpen(ox,oy) && isAdjacent(tmp_node.x,tmp_node.y,ox,oy))

opener = opener + 1;

if (ox == TileX && oy == TileY)
//Path Found

if (opener > 1) { popnode(actpath); }
correct_path = actpath*OPENSIZE;
return true; // Returning correct path
// Let's look some more

// Set cell as visited
open[oy*GRIDY+ox] = 1;

if (opener == 1)
//Go down the road.
// Add new path
} //  else
  }   // else
  }     // If

  }       // For

if (opener == 0) deletepath(actpath);  // Path is a dead end
actpath = actpath + 1; // Let's walk down the next path

if (actpath>=pathcnt) actpath=0; // We have to go to first path


return false;


Technical forum / Re: BUG with ToInt?
« on: November 05, 2004, 02:42:14 PM »

it works. Dijkstra's path finding using single dimensional array only. Now I can port it to WME.

Technical forum / Re: BUG with ToInt?
« on: November 05, 2004, 11:23:27 AM »

this wouldn't probably help me. I have a 8x8 grid and I have some dynamic sprites on it. I need to find if the sprite can slide from one grid square to another in every possible combination of obstacles, depending on users fooling around and moving obstacles. Or is there some more abstract implementation than waypoints?

Pages: 1 ... 98 99 [100] 101 102

Page created in 0.079 seconds with 20 queries.