Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

protobuf format mismatch between this and current worldengine?

オープン
#2 コメント 4 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
java
領域
backend

調査の方向性

WorldFileLoaderTest.java から始め、seed_17824.world と seed_1534.world を併用して失敗を再現します。loader が 2 つの protobuf 形式をどのように処理するかを比較し、互換性の境界を特定します。現在の WorldEngine ワールドファイルが必須フィールド不足エラーなしで読み込まれ、関連するテストが成功すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

I've tried to use this project to import information from a world file into a Java program (to paint a more detailed river map and a lake map, for example).
But even replacing

public void loadWorld() throws IOException {
    InputStream is = WorldFileLoaderTest.class.getClassLoader().getResourceAsStream("seed_1534.world");
    WorldFile.World worldFile = WorldFileLoader.fromInputStream(is);
    assertEquals("seed_1534", worldFile.getName());
}

with

public void loadWorld() throws IOException {
    InputStream is = WorldFileLoaderTest.class.getClassLoader().getResourceAsStream("seed_17824.world");
    WorldFile.World worldFile = WorldFileLoader.fromInputStream(is);
    //assertEquals("seed_17824", worldFile.getName());
}

in WorldFileLoaderTest.java (after placing the freshly generated seed_17824.world next to seed_1534.world in the filesystem) results in

Tests in error: 
  loadWorld(org.worldengine.world.WorldPainter): Message missing required fields: name, height, heightMapData, heightMapTh_sea, ...

A quick look with ghex into both seed_17824.world and seed_1534.world reveals that they look quite different (obviously only showing the first couple of bytes):

0A 09  s  e  e  d  _  1  5  3  4 10 80 08 18 80 08  " 80 98 C0 04 0A 80
 H 09 00 00 00 00 00 00 00 00 09 00 00 00 00 00 00 00 00 09 00 00 00 00

vs.

08 EE CA BD BB 05 10 80 80  L 1A 0A  s  e  e  d  _  1  7  8  2  4 20 D5
0E  ( F3 06  2 F3 D2 8E 07 0A FD 83 01 09 C2 F5  (  \ 8F C2 D5  ? 09 C2
F5  (  \ 8F C2 D5  ?
主要言語
Protocol Buffer
スター
7
フォーク
2
PR マージ指標
30日以内にマージされた PR はありません

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

似ている issue

Backend & API Design の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。