問題タブ [kryonet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
92 参照

android - ユーザー登録?

ゲームのログイン/登録システムを作成する必要がありますが、これが一般的にどのように行われるかわかりません。私はすでに、ネットワーク経由でデータをプッシュできる Kryonet を使用して、動作するクライアント/サーバー システムをセットアップしています。どのユーザーもログインできますが、切断するとすべてが失われます。最終的にはこれを Facebook ログインと互換性を持たせたいと思っていますが、現時点では必要ありません。

0 投票する
2 に答える
208 参照

java - Kryonet チャット POC タイムアウトの問題

そこで、私は Kryonet ライブラリを少し試しており、まずクライアント (リモート コンピューター) からサーバー (ローカル マシン) への通信を可能にする単純なチャット プログラムを開発することにしました。

クライアントからサーバーへのメッセージを受信できます。

しかし、厄介な問題があります。クライアントがパケット (ここではパケットはテキスト メッセージです) を一定時間送信しないと、サーバーからタイムアウトとして切断されます。

私はこれに苦労していて、これを修正する方法がわかりません...

//all my importsこれが私のプログラムのソースです(大量のインポート行を避けるためにコメントアウトされていることを除いて...):

ChattyServer.java

NetworkListener.java (サーバー側)

Packet.java (サーバー・クライアント共通)

ChattyClient.java

NetworkListener.java (クライアント側)

誰かが私が間違っていることを教えてもらえますか? クライアントが長時間アイドル状態になっても、クライアントとサーバー間の接続を維持したいと考えています。

前もって感謝します !

0 投票する
0 に答える
165 参照

java - kyronet で作成したクラスを含むオブジェクトの ArrayList を送信できますか? (ジャワ)

私のコードには問題はありません。Kryonet で ArrayList 内のカスタム オブジェクトを送信できるかどうかを知りたいだけです。たとえば、私のゲームは MMORPG で、さまざまなマップがあります。クライアントがサーバーからマップを要求するとき、返されるマップ パケットに、マップ上のプレイヤーとエンティティの ArrayList を含めたいと思います。それは可能ですか?

サンプル マップ パケット:

これが不可能な場合、どうすればこれを行うことができますか?

0 投票する
1 に答える
561 参照

java - Kryonet、BufferedImage を送信できません

私はまだ Java を学んでおり、Kryonet の Javadoc を検索しましたが、私の問題に対する答えが見つかりませんでした。

単純なチャット プログラムに Web カメラ機能を追加しています。

現在、ウェブカメラで撮影した単一のフレームを別のコンピューターに転送しようとしています。

Kryonet では「自作」のパケットを送信できるので、次のパケットを作成しました。

Packet9WebcamFrame.java

私のクライアントでは、このパケットを登録する必要がありました:

しかし、その後、他のクラスを登録するエラーが発生しました:

したがって、クライアントが「こんにちは、ウェブカメラ フレームを送信してください」というパケットを受信すると、次のようになります。

その後、うまくいくことを願っていましたが、それでもエラーが発生しました:

com.esotericsoftware.kryo.KryoException: java.nio.BufferOverflowException シリアル化トレース: bankdata (java.awt.image.DataBufferByte) dataBuffer (sun.awt.image.SunWritableRaster) raster (java.awt.image.BufferedImage)

フレーム (com.jmr.monitor.packets.Packet9WebcamFrame)

com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:585) で com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) で com.esotericsoftware.kryo.Kryo.writeObject (Kryo.java:504) com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) com. esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer. java:213) com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) で com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:571) at com .esotericsoftware.kryonet.KryoSerialization.write(KryoSerialization.java:50) で com.esotericsoftware.kryonet.TcpConnection.send(TcpConnection.java:192) で com.esotericsoftware.kryonet.Connection.sendTCP(Connection.java:59) でcom.jmr.monitor.PacketHandler.handlePacket4(PacketHandler.java:131) で com.jmr.monitor.Main$1.received(Main.java:93)KryoSerialization.write(KryoSerialization.java:50) com.esotericsoftware.kryonet.TcpConnection.send(TcpConnection.java:192) com.esotericsoftware.kryonet.Connection.sendTCP(Connection.java:59) com.jmr.monitor com.jmr.monitor.Main$1.received(Main.java:93) の .PacketHandler.handlePacket4(PacketHandler.java:131)KryoSerialization.write(KryoSerialization.java:50) com.esotericsoftware.kryonet.TcpConnection.send(TcpConnection.java:192) com.esotericsoftware.kryonet.Connection.sendTCP(Connection.java:59) com.jmr.monitor com.jmr.monitor.Main$1.received(Main.java:93) の .PacketHandler.handlePacket4(PacketHandler.java:131)

したがって、これは bufferOverflow の問題です。クライアントのコンストラクターで、バッファー サイズを増やすなど、いくつかのことを試しましたが、今のところうまくいきません。

この厄介な問題を解決する方法について何か考えはありますか?

前もって感謝します。

よろしく、

アズデ。

0 投票する
1 に答える
1263 参照

android - kryonet を使用してサーバー/クライアントが動作しない Android ゲーム

私は何日もの間、何が悪いのか、物事を変えるなどを解決しようとしてきましたが、役に立ちませんでした.

Samsung デバイスでクライアント側をデバッグしようとすると、Android Studio で次のエラーが発生します。

同じJavaバージョンを使用していると思います。クラスもまったく同じように登録します。クライアント側:

サーバ側:

クラス:

非常に基本的なコードを見ることができますが、接続するのは悪夢です。助けてください!!私はAndroidスタジオでクライアント側を作成しており、サーバーはEclipseで作成しています。これが問題の原因になる可能性はありますか? それが私が想像できた唯一の論理的な理由です。どうすれば解決できますか?

0 投票する
1 に答える
1279 参照

java - Kryonet シリアル化エラー

誰かがこれが重複していると私に教えようとする前に、私はこれに関する解決策と、が見つけることができる他のほぼすべての答えを試しました。

私のプロジェクトはIntelliJで問題なくビルドされ、セットアップしたすべてのテストに合格し、IntelliJ内からでも問題なく実行されます.mavenによってビルドされたJARを実行しようとするとすぐに、いくつかの例外があります.

コードが指しているクラス:

これがコマンドプロンプトから実行されたときに表示される例外によると、問題は31行目にあります。

コマンド プロンプトのスタック トレースは次のとおりです。

前に述べたように、私は maven を使用してこのプロジェクトをビルドしていますが、kryonet ファイルを JAR にシェーディングするために maven-shade-plugin を使用しています。

ここに私のPOM.xmlがあります:

0 投票する
1 に答える
808 参照

java - Array<> のシリアライザーの書き方は?

これにアプローチする方法がわかりません。Array<>libgdx で見つかったオブジェクトのシリアライザーを作成する必要があります。

いつもの連載はこんな感じです。ここでは、 用のカスタム シリアライザーを作成する必要がありPlayerDataPacketます。

私はこれを見つけました: https://groups.google.com/forum/#!topic/kryonet-users/9z4Ix2JO7JA しかし、いくつかの方法を見つけることができないため、時代遅れのようです。でそれを行いArray<>ます。

0 投票する
1 に答える
106 参照

java - ネストされたすべての静的クラスをパラメーターとしてメソッド呼び出しに自動的に渡すにはどうすればよいですか?

クラス (以下で定義)内の静的クラスの配列を取得し、Network各クラスの属性classをメソッド呼び出しのパラメーターに渡す方法はありますkryo.registerか?

0 投票する
1 に答える
285 参照

udp - Kryonet connect udp: 要求されたアドレスを割り当てることができません

サーバー開発初心者です。私はKryonentを試しています。を使ってサーバーを作りました。

および使用しているクライアント

IP 0.0.0.0 を使用して、同じ Windows ラップトップでクライアントとサーバーの両方をテストしています。例外が発生しました:

私は何を間違えましたか?