mbs: I think a nice new direction for computers would be something of a "directed knowlege processor"
grimkey: what is that?
mbs: Sort of a computer agent, probably voice activated, that can do searching and sorting based on actual content, and weed out the chaff and verbage. So your professor of the future would be surrounded by a number of invisible assistants, with instant access to libraries at their "fingertips" as it were.
Another useful concept... Personal databanks. You would have instant access to all of your notes, reference books, and records whenever you need them. So you could run lab experiments, dictate any results that were not automatically recorded, note conclusions, organize data for papers.
Maybe even have an algorythm devoted to writing dissertations and papers based on the raw data and your input...
grimkey: Sounds like a software giant in the making
grimkey: When are you starting? :)
mbs: MacroHard, Inc.
grimkey: BlueSky Software
mbs: Kensai Corp. Ken - Knowledge, cunning Sai - Saint, expert
mbs: What would be really cool is a server that lets you mix and match levels and interfaces... So someone could be playing Quake, someone else could be playing Doom, a third person could play Unreal, and they could all interface on the same arena. We need a network game API / standard.
grimkey: They won't do it. Because the standard would limit the different
companies
mbs: True.
mbs: Unless it didn't, of course.
mbs: Unreal is based on a licensed copy of Heretic 1 (?) engine, they
said they replaced 70% of the code.
mbs: I have no idea about Half-Life.
mbs: The idea is something like this:
grimkey: Lets say Matt and I wrote a game that basically used FPSAPI
(First Person Shooter API), we would need to offer something more than what
FPS's currently offer because otherwise no one would play it
mbs: Each client is responsible for rendering the map and levels for
their player....
grimkey: We'd have to have like 'instincts' which would mean the computer
would smartly help you to move when someone wanted to shoot you.
mbs: Well, that is client based.
grimkey: or something that Quake doesn't
mbs: The API is just the interface to the server.
mbs: Your client could run you like a bot for all I care.
mbs: That would be fun... Program your bots, set them into the server,
winner takes all...
mbs: The interesting thing would be to lay ones hands on what exactly
is passed over the network, and see how much it varies (if at all) from one
game to the next.
mbs: Even if it was rather different, they could plug into different
ports on the server, and each get a custom feed.
mbs: The only thing the server would have to do is what it does
already...
grimkey: Its hard enough to keep from lagging, if you have to interprete
the signals too?
mbs: Big server.
mbs: Lag is not so much a server problem as a client bandwidth issue, I
would imagine.
mbs: Although with several thousand players interfacing into a single
map, I could see some big issues.
mbs: ... Or, n servers linked over an ultra fast network...
grimkey: thousand per map? I don't think you can do it right now.
grimkey: 30 seems to kill most processors
mbs: True...
grimkey: You'd need a huge machine
mbs: Or, some really clever code.
grimkey: terraflops could handle thousands probably
grimkey: clever code cannot help with a thousand people shoots machines
guns in the same room, its just to much data over the links
mbs: Supposedly, the average Unreal server can be set to handle
thousands.
mbs: But not all in the same game.
grimkey: really?
mbs: It would be really informative to see what gets sent over those
wires.
mbs: We would probably be amazed at how little is really
required.
grimkey: That would be impressive, I noticed how much lag was added in
Quake last night when we got onto a board in which everyone fought relatively
closely near each other. Just way to much
mbs: You need StartX/Y/Z, EndX/Y/Z, Speed, Damage
mbs: Send it to the server...
mbs: Client only gets what is relevant to his character...
mbs: You could probably generalize groups of shots into consolidated
blocks if you really had to...
mbs: A group of shells travelling together could be simplified into a
single path/speed/damage mbs: Oh, and area of effect...
mbs: Speed, damage, and area could actually be cached on the server, as
it would be fairly static for the weapons involved.
mbs: You could even take shortcuts with movement... Represent it as a
series of straight path location changes, one path per server or client tick
(whichever is slower)
grimkey: The probably matt and I are working on is how you can make maps
load while walking on them
mbs: Good idea.
mbs: That would look really cool...
mbs: The area unfolding around you as the data is loaded.
grimkey: So you can have worlds of unlimited size with no reloading
mbs: Textures could be sent in detail last, during low points.
mbs: Everything could be stark polygons initially...
mbs: Of course, the way unreal does it, it references local maps, or
transfers the entire level to the player.
mbs: Texture files are seprate files, that must be completely
transferred first.
grimkey: Quake lets you make new maps and send them before you can enter
the game
mbs: Once all of the elements are sent over, then the level
begins.
mbs: At the very least, custom textures could be sent asynchronously
after the level starts.