XNET Multiplayer Netzwerk Engine

Übersicht BlitzBasic DLLs und Userlibs

Neue Antwort erstellen

 

c64

Betreff: XNET Multiplayer Netzwerk Engine

BeitragDi, März 03, 2009 15:21
Antworten mit Zitat
Benutzer-Profile anzeigen
user posted image


XNET ist eine Multiplayer Netzwerk Engine für Blitz3D und Blitz+

Weitere Infos Hier !!! , wenn fragen sind bitte im XNET Forum melden.


So, Happy Coding würd ich mal sagen Smile !!


mfg. C64
Betreten verboten! Kinder haften für ihre Eltern!
  • Zuletzt bearbeitet von c64 am Mi, März 04, 2009 14:22, insgesamt 2-mal bearbeitet
 

Sliver

BeitragDi, März 03, 2009 17:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, hab nen Fehler gefunden in decls:

XNETSendSeureMessage%(messageobject%): "XNETSendSecureMessage"

Trotzdem gute Arbeit!
 

c64

BeitragDi, März 03, 2009 18:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Ups,

Danke dir für die Info und fürs feedback so oder so Smile !!! Habs gleich korrigiert !

mfg. C64
Betreten verboten! Kinder haften für ihre Eltern!
 

Sliver

BeitragMi, März 04, 2009 15:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Wrappe grade für eine andere Programmiersprache wenns recht ist Wink
Details schreib ich dir auf deine HP/Forum!

Achja da ist noch ein Fehler, oder?:

XNETGetString#(Object%,SlotID%) : "XNETGetString"


sollte das nicht ein $ sein Wink


EDIT und :

XNETGetFloat%(Object%,SlotID%) : "XNETGetFLoat"

ein # ...

Oder vertue ich mich da grade?


EDIT2:

Erste Tests sind gut verlaufen Wink
 

c64

BeitragMi, März 04, 2009 17:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Sliver,

Cool besten Dank !!

Wolle eigentlich noch fragen wegen anderen Sprachen ob da wer Lust hätte. Klar freu mich doch wenn du das ins XNET forum Postest !!

Hmm wegen den Deklarationen schau ich gleich ma, mensch mensch sowas sollte man wohl machen wenn man nich schon so derbe fertsch is Wink . Beim XNETGetFloat war auch das L gross da hat B3D wohl auch gemeckert.

Wie gesagt dickes danke !

http://www.c64.feuerware.com/page/?q=node/92
Betreten verboten! Kinder haften für ihre Eltern!

Jo0oker

BeitragMi, Okt 14, 2009 1:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, ich hantiere zur Zeit ein wenig mit C# und B3D rum
Als Kommunikationsmöglichkeit wollte ich XNet nutzen, nur leider stürzen beide Anwendungen ab, wenn ich in ihnen SetString nutze.
SetInt geht komischerweise und der rest auch.

Hier mal meine C'-XNet klasse:
Code: [AUSKLAPPEN]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

namespace Communicate
{


    class XNet
    {
        [DllImport("xnetdll.dll")]
        public static extern int XNETHostSession(int port);
        [DllImport("xnetdll.dll")]
        public static extern int XNETJoinSession(string ip, int port);
        [DllImport("xnetdll.dll")]
        public static extern void XNETUpdateSession(int Session);
        [DllImport("xnetdll.dll")]
        public static extern int XNETCreateObject(int Session);
        [DllImport("xnetdll.dll")]
        public static extern float XNETGetFloat(int Wert1, int slot);
        [DllImport("xnetdll.dll")]
        public static extern int XNETGetInt(int Wert1, int slot);
        [DllImport("xnetdll.dll")]
        public static extern string XNETGetString(int Wert1, int slot);
        [DllImport("xnetdll.dll")]
        public static extern void XNETSetFloat(int Wert1, int slot, float wert);
        [DllImport("xnetdll.dll")]
        public static extern void XNETSetInt(int Wert1, int slot, int wert);
        [DllImport("xnetdll.dll")]
        public static extern void XNETSetString(int Wert1, int slot, string wert);
        [DllImport("xnetdll.dll")]
        public static extern int XNETObjectFromList();
        [DllImport("xnetdll.dll")]
        public static extern int XNETObjectRemote(int obj);
        [DllImport("xnetdll.dll")]
        public static extern void XNETCloseSession(int session);
        [DllImport("xnetdll.dll")]
        public static extern void XNETCloseDll(int session);
        [DllImport("xnetdll.dll")]
        public static extern void XNETGetObjects(int session);
        [DllImport("xnetdll.dll")]
        public static extern void XNETCloseDLL();
        [DllImport("xnetdll.dll")]
        public static extern int XNETCountList();
        [DllImport("xnetdll.dll")]
        public static extern int XNETCreateMessage(int obj);
        [DllImport("xnetdll.dll")]
        public static extern void XNETSendSecureMessage(int obj, int sec);

    }
}



Vielleicht hatte ja nochjemand anderes das Problem...

lg Jo0oker
Tehadon, das kostenlose 3D RPG
www.tehadon.de
http://www.blitzforum.de/worklogs/14/
Das Abenteuer wird beginnen!

ToeB

BeitragMi, Okt 14, 2009 2:04
Antworten mit Zitat
Benutzer-Profile anzeigen
1. : Sau gute Arbeit, muss ich sagen !
2.: Jetzt braucht keiner mehr meine UDP-Lib Sad
3.: Vielleicht wäre auch ein "EndSession" oder sowas drin, sodass der Server sofort weiß das der Spieler nicht mehr mitspielt und so nicht auf den PingTimeOut warten muss...
4.: Wie funtz das ganze jetzt genau ? Ich mein Schnelligkeit von UDP und sicherheit von TCP, wie soll das gehen ?

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

kog

BeitragMi, Okt 14, 2009 2:09
Antworten mit Zitat
Benutzer-Profile anzeigen
@Jo0oker
Ich würd fast behaupten es läge am String
Da XNET glaube ich in BMax erstellt wurde, da das Stringformat in BMax anders ist als in C#, müsstest wohl ein Übergangsroutine machen

Aufbau eines Strings in BMax, sollte dich vl. Weiterbringen:
Code: [AUSKLAPPEN]
struct BBString{
   BBClass*   clas;
   int      refs;
   int      length;
   BBChar   buf[];
};
 

c64

BeitragMo, Nov 02, 2009 9:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

zu den C++ anfragen kann ich leider nicht soviel sagen. Die Sache mit der Geschwindigkeit und der sicherheit ist folgende.

Wenn Packete gesendet werden die wichtig sind und die ankommen müssen kann XNETSendSecureMessage genutzt werden, sollten dort Pakete verloren gehen oder ungeordnet ankommen gibt es eine Fehlerbehandlungsroutine die dafür sorgt das die Packete sortiert werden und auch 100% ankommen, dies ist allerdings nicht für Aktionslastige sachen zu benutzen sondern nur für wirklich wichtige Daten bei denen die Reihenfolge und das 100% ankommen wichtig ist.

Dennoch konnten auch keine Fehler festgestellt werden beim ,,normalen" Versand von Packeten.


Naja Xnet ist auch ,,erst" in Version 1.024 ich habe noch vor BnetEX zu ersetzen da ich vermute das dies im DLL Betrieb Probleme bereitet (nur unter VISTA !) ansonsten bleibt erstmal zu hoffen das XNET doch noch als gängige hilfreiche Bibliotheck angenommen wird und durch die Umstellung der Lizens auf Freeware und das Freigeben des Sources sich evtl noch eine kleine Entwicklergemeinde findet die aktiv an und mit XNET arbeitet.

Mfg. C64

(PS: Sry für die späte Antwort hab leider kaum noch Zeit!)
Betreten verboten! Kinder haften für ihre Eltern!

Neue Antwort erstellen


Übersicht BlitzBasic DLLs und Userlibs

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group