【BeamNG】便利&面白コマンド集

BeamNG.drive[JP]

4.デバッグ/Mod開発系

table型の中身を見るときのTIPS

# tableの中身を表示
for k, v in pairs(table01) do print(k) print(v) end

# table長(レコード数)を表示
table.maxn(table01)

車両ID系の情報

# ユーザの車両
tbl1 = core_vehicle_manager.getPlayerVehicleData()

# それ以外の車両
tbl1 = core_vehicle_manager.getVehicleData(vid)

# Trafficの車両のID一覧
tbl1 = extensions.gameplay_traffic.getTrafficList()

車両の構成情報

# 車両の基本情報(コンフィグ毎の情報ではない)
tbl1 = core_vehicles.getVehicleList()

# 例えばValueは以下のように取得可能
for k, v in pairs(tbl1['vehicles'][42]['model']['aggregates']['Value']) do print(k) print(v) end

ダメージ情報

for vid, veh in activeVehiclesIterator() do veh:queueLuaCommand("damage_table = beamstate.getPartDamageData(); dump(damage_table)") end

追跡情報

extensions.gameplay_traffic.getPursuitData()

車両の位置情報取得

for vid, veh in activeVehiclesIterator() do print(veh:getPosition()) end

luaのextension一覧表示

print(extensions.printExtensions())

車両間の距離

playerPos = be:getPlayerVehicle(0):getPosition()
for vid, veh in activeVehiclesIterator() do print(veh:getPosition():squaredDistance(playerPos)) end

車両の速度(絶対値mile/h)

be:getPlayerVehicle(0):getVelocity():length()

level一覧(各levelの情報のtable)

for k, v in pairs(core_levels.getList()) do for k2, v2 in pairs(v) do print(k2) end end

参考

・BeamNGのAPIについて

C:\Program Files (x86)\Steam\steamapps\common\BeamNG.drive\lua
※インストール方法によっては場所が違うかも。

・その他

c – How to inspect userdata in lua – Stack Overflow
https://noriok.hatenablog.com/entry/2012/03/27/002111
https://staff.aist.go.jp/yutaka.ueno/lua/tebiki3jp.html

コメント / COMMENT

タイトルとURLをコピーしました