Author Topic: FPS Project  (Read 9719 times)

0 Members and 1 Guest are viewing this topic.

Jusan

  • Thug
  • *
  • Posts: 14
    • Page perso
FPS Project
« on: March 12, 2007, 06:08:57 AM »
Here is the current work in progress of an online first person shooter :

The aim is to develop a fully online multiplayer environnement with Hyperion

=> Current features :
    - A lua server managing the connections, positions and messages of every player . (currently running)
    - A client connecting to the server, and that enables you to walk around the map with other players .

=> Try it !
Run this script with Hyperion  :
http://srv.manuceau.net/vincent/Info/Hyperion/Fps_Project/last/client_launcher.xml
It will download on your hard drive the latest required files for the client , then it will launch the client
and connect to the server ...

=>ScreenShot :


=> Todo :
    Lots of things  !
    - chat features
    - improving the gamplay and the communications between client and server,
    - introducing guns, creating maps, doing a cool interface, and so on ...
     
=> Help ! :   I desperately need remarks, tests, advices to go further in this project ... Help me please !
« Last Edit: March 12, 2007, 06:24:19 AM by Jusan »

JeGX

  • Global Moderator
  • Capo Crimine
  • *****
  • Posts: 2357
    • oZone3D.Net
Re: FPS Project
« Reply #1 on: March 12, 2007, 08:57:48 AM »
Yep je vais regarder ce projet avec attention  ;)
Je dois avoir dans un coin un bout de code Hyperion pour la mise en place d'un FPS. Je vais le retrouver et te le passer.

JeGX

  • Global Moderator
  • Capo Crimine
  • *****
  • Posts: 2357
    • oZone3D.Net
Re: FPS Project
« Reply #2 on: March 12, 2007, 12:15:49 PM »
Je viens de tester le client_launcher.xml. Beau code. C'est vraiment un bon debut pour un jeu massivement online  ;)
Mais il  y a ubn petit bug vers la fin du download des fichiers. J'ai ajouté quelques traces afin de voir ou ca plante:

La connexion à ton serveur se passe bien et on recupère bien le fichier de description filesToDownload.txt.


Le download des fichiers client.xml, eachFrameClient.lua, initClient.lua a l'air de bien se dérouler:


Mais il semble y avoir un plantage à la fin du download du fichier clientModel.obj:


Voila histoire de faire avancer ton debug plus rapidement...  ;)

Jusan

  • Thug
  • *
  • Posts: 14
    • Page perso
Re: FPS Project
« Reply #3 on: March 12, 2007, 07:28:17 PM »
Thanks for the Trace debug !
I think i have fixed the problem (I read exactly the size of each file ... not line by line)

Download the new version of the client there :
http://srv.manuceau.net/vincent/Info/Hyperion/Fps_Project/last/client_launcher.xml

Have fun !

JeGX

  • Global Moderator
  • Capo Crimine
  • *****
  • Posts: 2357
    • oZone3D.Net
Re: FPS Project
« Reply #4 on: March 12, 2007, 08:40:05 PM »
Yeah! works fine!
Output comments make life easier!
The only thing I've changed in client_launcher.xml is the download directory using HYP_GetBaseDir():

Code: [Select]
path="/vincent/Info/Hyperion/Fps_Project/last/client/" ;
 host="srv.manuceau.net"
 -- dlPath="" ;
 dlPath = HYP_GetBaseDir() .. "/";

Now all files are downloaded in the client_launcher.xml dir and Hyperion can correctly load the new scene with HYP_Scene.LoadXml( "client.xml").

Really cool. I can't wait the next versions!

Je pense que tout ceci pourrait faire l'objet d'un petit tuto pour montrer les possibilités réseaux d'Hyperion. Qu'en dis-tu Jusan ?

Jusan

  • Thug
  • *
  • Posts: 14
    • Page perso
Re: FPS Project
« Reply #5 on: March 12, 2007, 09:23:41 PM »
Merci beaucoup JeGX j'ai modifie le script ... it seems to work fine !

Petite question:
=> Que dois-je mettre comme timeout pour le server , et pour le client ?
pour le moment les 2 sont a 0.005 ms
(pour info : j'ai une connection 1Mega Upload et 20Mega en Download depuis chez moi)
En LAN ca a l'air d'etre fluide mais je ne sais pas si ca le reste quand on se connecte depuis le net .

New features :
- the Chat window => Server messages, Clients connections and disconnections, Clients messages (WIP)
- Client detects when he has lost the server connection
- Server manages accidentaly closed connections
- you can reload your script by pressing [ENTER] and disconnect by pressing [SPACE]


Pour le tuto, ce serait avec un immense plaisir ! Par contre il faudrait que je comprenne mieux les communications
client/server (lire correctement ton tuto en LUA ...), et que je progresse beaucoup plus en Hyperion car je debute
tout juste  ! (mon premier script etait le billard demo ...)

« Last Edit: March 12, 2007, 11:06:02 PM by Jusan »

Jusan

  • Thug
  • *
  • Posts: 14
    • Page perso
Re: FPS Project
« Reply #6 on: March 17, 2007, 01:04:41 AM »
I'm currently developping lots of features (and also dealing with lots of associated problems) .

-> Rewriting a clear source code (  that i expect to put in the tutorial )
-> Synchronising every movement between clients
-> Managing the Physics Engine (and synchronise everybody)
-> Chatting features
-> Multiple Cameras
-> Debuging ...

You can try it  there (unstable version) : http://srv.manuceau.net/~vincent/Info/Hyperion/Fps_Project/dev/client_launcher.xml

To move use :  Up, Down, Left and Right arrow buttons

You can see the sources : http://srv.manuceau.net/~vincent/Info/Hyperion/Fps_Project/dev/

What's next :
- A user interface (for the downloading script and the client script)
- A server manager (creation, ...)
- An AI to play with you ...
« Last Edit: March 17, 2007, 09:34:39 AM by Jusan »

JeGX

  • Global Moderator
  • Capo Crimine
  • *****
  • Posts: 2357
    • oZone3D.Net
Re: FPS Project
« Reply #7 on: March 17, 2007, 07:11:42 PM »
Je vais reprendre le dev d'hyperion dans peu de temps et je regarderai à nouveau ton projet à ce moment là (ca me fera un script de test de plus !)
Mais tu peux déjà sans problème commencer à réfléchir au contenu de ton tutoriel...
En tout cas bravo et continu comme ça  ;)

Jusan

  • Thug
  • *
  • Posts: 14
    • Page perso
Re: FPS Project
« Reply #8 on: April 01, 2007, 08:07:39 PM »
It gets funnier everyday !


I'am rewriting the major part of the scripts in order to clarify them, and eventualy
illustrate a nice tutorial :-)


Features to come :

- A server integrated in Hyperion
- Running both server and client in the same Hyperion scene
- Improved input management
- Improved communication between server and clients
« Last Edit: April 02, 2007, 01:04:51 AM by Jusan »