Page 1 of 14

Oolite Multiplayer? Please read

Posted: Thu May 28, 2009 9:33 pm
by another_commander
Time and again people have requested or proposed that Oolite gets converted to multi player, massive or not. Although this subject has been addressed in the FAQ found on the Wiki, the requests keep coming in. For those who come with the intention to ask this question yet one more time, before doing that please refer to this topic:
http://aegidian.org/bb/viewtopic.php?t=964
Third post from top. Winston is giving an overview of the reasons why this request cannot be fulfilled any time soon. Although that post was written in 2005 and a lot of things have changed in the game since then, the points made at that time are still perfectly valid.

You are also invited to have a read of these topics:
http://aegidian.org/bb/viewtopic.php?t=3216
http://aegidian.org/bb/viewtopic.php?t=1743
http://aegidian.org/bb/viewtopic.php?t=3596

Bottom line: There are no plans by the current dev team to make Oolite multiplayer any time soon. This would require essentially a rewrite of the game from scratch, apart from logistical and possibly even legal reasons that get in the way of attempting a project like this.

Having said that, if anyone would like to bite the bullet and start working on it, by all means feel free to do so. Oolite is open source after all. It would not be a bad idea making the game multi player capable, it's just that the effort required to do it does not justify the result, however grand it might be. Oolite was designed from its conception as single player and the plan for now is that it remains so.

Posted: Thu May 28, 2009 10:43 pm
by Squeek
But what about making AI similar to your play style, thus "adding yourself to the game".

That would be an awesome way to simulate multi-player.


I think I'm going to work on an OXP for my persona.

Posted: Fri May 29, 2009 2:16 am
by overmage
Squeek wrote:But what about making AI similar to your play style, thus "adding yourself to the game".

:idea:

Posted: Fri May 29, 2009 2:37 am
by Nemoricus
I smell an OXP idea coming on.

*begins plotting*

Posted: Tue Jun 02, 2009 5:35 pm
by nijineko
i think that the closest method of multiplayer with the current limitations are the exchanges of unique ai. if someone manages to nail an oxp that "puts your own character in the game", and if that oxp was able to output a unique set of ai files for that character based on the typical actions taken by said player, say moves taken during a battle, or systems frequently visited, or preference of trade over piracy or any other number of factors which might logically be able to be extracted, stored and reused to represent a "character"; we could then have a 'unique character oxp' per player.

i know that a certain someone's 'character oxp' would involve offering to sell a certain "cute pet".

sorry, raw idea dump here... surely needs refining. any more ideas?

Posted: Tue Jun 02, 2009 6:18 pm
by Nemoricus
Well, at a glance this wouldn't need much.

1. A custom AI for each unique NPC.
2. A custom ship that each unique NPC uses. This is so that they have the equipment and ship that they're supposed to.
3. A script that adds the unique NPC based on their usual behavior.

Thoughts?

Posted: Tue Jun 02, 2009 6:49 pm
by LittleBear
1 and 2 are pretty much in the core game as traders get a traderAI, pirates a pirateAI and so on. Random 'Dice Rolls' can also be used in AIs to simulate an NPC a character of sorts eg by setting the percentages for run away, jump out, fight etc and you can throw in some hails fairly easily to give the ship a feel as to whether your attacking a cowardly custard or deadly fighter. On 3, there are a lot of mission oxps about adding all sorts of characters and these all have hand-crafted AIs. Obviously, there's a limit to the way an NPC can interact with you (or even another player if we had a PvP rather than PvE game), as with ships in space you can really only fight, run or make a jump, but you can do quite a lot with Oolite's AIs. It'd be cool to add some more varients though to the core AIs, for example have 3 traderAI varients set to different reactions to attack from total Jamesons who flee at a mere lick of a laser to hardened veterans, who may be traders but fight as fearlessly as a Thargoid in defence of their cargo. Its doable with a small OXP to set up AI varients.

Posted: Wed Jun 03, 2009 7:57 pm
by nijineko
a further thought would be to have the oxp have an "ai learning" mode where it attempts to codify certain select behaviors of the players into an ai. sort of like a screenshot video... you turn on the learning mode, and it stores data about what you do in certain situations, ones that are quantifiable. this in turn generates "your personal oolite alternate ai", which you can then pass off to others. perhaps it would not be too much to have certain player-alterable settings to boot, so that you can set the overall setting of your ai, and the learning mode sets some more fine tune numbers.

some thing it would be handy for the ai to recognize is combat, end of combat, fleeing from combat after engaging in a battle, ignoring nearby combat, trading habits-as in what sorts of cargos are typically selected and to what kind of systems, typical maneuvers in combat, what kinds of systems are visited vs passing through, station or sun-scooping, taking the common flight lanes vs swinging wide, piracy, asteroid mining, and so forth. a lot of these could be made into settings using the custom display screens i've seen in some oxp.

just brainstorming along. which reminds me, i really need to make time for the betatesting.... job hunting is so draining on the resources. ^^

Posted: Wed Jun 03, 2009 10:55 pm
by Cmdr James
Good luck with that AI OXP, sounds like a nice university project for a Comp Sci student, if anyone fancies it.

Posted: Thu Aug 20, 2009 10:00 pm
by wackyman465
Sounds like it might take an entire redesign of the game engine. But it might be possible with an OXP.. I double-dog dare you to try it.

Posted: Fri Aug 21, 2009 1:27 am
by zevans
wackyman465 wrote:Sounds like it might take an entire redesign of the game engine. But it might be possible with an OXP.. I double-dog dare you to try it.
Googling for "JavaScript neural network" was surprisingly productive. Could be on to something here. ;-)

Posted: Fri Aug 21, 2009 5:51 am
by wackyman465
He's a brave man.

Seriously though? JS neural nets?

Posted: Fri Aug 21, 2009 8:15 am
by Selezen
"Commander Data, can you fly that helicopter?"

"Is there an applet I can download?"

:-)

Posted: Fri Aug 21, 2009 9:36 am
by Commander McLane
That's exactly how it worked in "Matrix", isn't it?

Posted: Sat May 01, 2010 9:08 pm
by DaddyHoggy
Commander McLane wrote:That's exactly how it worked in "Matrix", isn't it?
And "Joe 90".

I noticed last week there was another request for multiplayer :roll: :wink: but I've been thinking...

If anybody ever takes on the challenge of Multi-player on and would like an underlying methodology for linking the machines together that could help with some of those icky lag and data thru put issues, you might want to think about something like Open-DIS (http://open-dis.sourceforge.net/Open-DIS.html)

My MSc students have just finished their big Networked Distributed Simulation week-long exercise - a WAN Virtual (entity level) Synthetic Environment.

Some figures (to tempt or put off!)

400 AI created entities (civilian clutter driving around roads - c. 50-90kph)
100 computer generated (but human controlled/directed) BLUEFOR and OPFOR entities (to fight it out amongst the civilian clutter)
2 human controlled piloted Fast Jets (c. 600kph) to provide CAS.

Using DIS Dead-Reckoning algorithms (default values - send out a positional update per entity if internally calculated actual position and DR position differ by more than 1m or 3deg) max bandwidth usage over the Broadband between WAN sites was 450Kb/s with an average lag of 80ms.

While incorporating DIS would require a complete rewrite - the figures for my students exercise did surprise me - perhaps one day Oolite won't be massively multiplayer but perhaps their could be the odd system where forum members could meet up and trade and/or kick each others iron-asses! :)

http://open-dis.sourceforge.net/Open-DIS.html