Neue SQM vs Alte SQM

  • Multiplayer

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Neue SQM vs Alte SQM

    Tach,
    einige von euch kennen sicher noch den guten alten 2D Editor aus ArmA. In der missions.sqm wurden alle Addons, die man zum spielen der Mission benötigt eingetragen.
    Dort wurde ja immer auch die Map festgelegt.
    addOnsAuto[]= { .....

    Im 3D Editor werden nur noch die gesetzten Einheiten/Objekte in die sqm eingetragen.
    class AddonsMetaData {.....
    Da fehlt aber jetzt der Eintrag für das Terrain.

    Problem (getestet): Man kann auf einen Server joinen ohne die benötigte Map zu haben. Im Falle Rosche spawnt man dann auf der Tanoa.
    Es kommt zwar ein paar mal eine Fehlermeldung bezüglich der fehlenden Config, aber man kann bis in die Mission durchjippen.
    Der Server kickt einen somit nicht mehr wie mit der alten SMQ. Das scheint irgendwie keinem aufgefallen zu sein bisher, denn dazu hab ich im Netz nichts gefunden.


    Kann das hier irgendjemand bestätigen, und wenn ja, gibt es irgendwelche Ideen oder Lösungen ?

    Beste Grüße
    Muecke
    Warum reiben sich Frauen morgens nach dem Aufstehen die Augen?
    Weil sie keine Eier zum Kratzen haben!


    tactical faction action & insurrection
    steamcommunity.com/sharedfiles/filedetails/?id=697756742
  • Kann ich so bestätigen. Sieht witzig aus wenn jemand im Boden schwimmt.
    Weiß auch nicht ob es Bohemia bekannt ist.

    Lösung wäre natürlich das Terrain manuell ein zu tragen. Eigentlich müsste es den alten "addons[]" Array immernoch geben. Zumindest habe ich erst gestern aus einer Mission.sqm ein paar Addon Einträge manuell entfernt.

    Oder vllt ein Terrain spezifisches Gebäude platzieren. Wenn man Z.b. auf Takistan ein CUP Gebäude platziert, sollte ja CUP in requiredAddons gepackt werden, wodurch dann Spieler ohne CUP nicht joinen können, Das überprüft zwar nicht spezifisch ob das Terrain da ist, aber wenn CUP da ist dann wird wohl niemand einzelne Terrains rausgelöscht haben.
  • Ja man kann später schon den Terrainnamen ins "addons[]" Array eintragen. Der Nachteil ist aber dass, sobald man die SQM wieder im Eden öffnet, es nach dem speichern wieder weg ist.
    Ich sehe bisher nur diese eine Lösung. Auch ein Skript würde zu spät greifen eigentlich.
    Warum reiben sich Frauen morgens nach dem Aufstehen die Augen?
    Weil sie keine Eier zum Kratzen haben!


    tactical faction action & insurrection
    steamcommunity.com/sharedfiles/filedetails/?id=697756742
  • commy2, 2 Fragen.
    1. Durch deinen Code würde der Spieler nach dem laden der Mission direkt gekickt ?
    2. Könnte man den Namen des Terrains in der init.sqf auslesen und vergleichen lassen ?

    Aber zur Not wäre diese Lösung eine Alternative.
    Warum reiben sich Frauen morgens nach dem Aufstehen die Augen?
    Weil sie keine Eier zum Kratzen haben!


    tactical faction action & insurrection
    steamcommunity.com/sharedfiles/filedetails/?id=697756742
  • Ich bin zwar nicht commy aber ich antworte mal stellvertretend:

    1. Ja - also zumindest relativ. Der entsprechende Spieler wird auf keinen Fall in der Mission rum spielen weil er direkt bei der Initialisierung raus fliegt.
    2. Wenn du den Kommentar im Code anschaust siehst du dass es sogar für die init vorgesehen ist ;)
    Entwickler von SQDev
    Co-Entwickler von OurAltis
  • >1. Durch deinen Code würde der Spieler nach dem laden der Mission direkt gekickt ?
    In die Lobby kommen die noch. Es werden ja keine Skripte vor und während der Lobby ausgeführt. Bei Clienten existiert nicht mal die Missionskonfig während der Lobby, weshalb das Benennen von Gruppen in der Lobby auch so schwierig ist.
    Aber dann wird irgendwann während des Briefings, oder bei JIP nach dem x-ten Ladebalken, die init.sqf ausgeführt und der Spieler gekickt.

    >2. Könnte man den Namen des Terrains in der init.sqf auslesen und vergleichen lassen ?
    Man kann Werte aus der description.ext leicht auslesen. Aber die Karte ist, soweit ich weiß, nur in der mission.sqm angegeben. Entweder der Eintrag für die Karte ist getMissionConfgValue kompatibel, oder man müsste die SQM in SQF selbst parsen. Das wäre dann zwar sehr häßlich, aber in AGM haben wir schon schlimmeres gemacht. Ob das bei binarisierten Missionen geht weiß ich nicht.
    Ich schau einfach mal nach...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von commy2 ()

  • Brainfuck-Quellcode

    1. 11:54:53 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    2. 11:54:53 Warning Message: No entry '.description'.
    3. 11:54:53 Warning Message: '/' is not a value
    4. 11:54:54 Placement slopelandcontact failed on model a3\structures_f_exp\walls\net\netfence_01_m_8m_nolc_f.p3d. Missing landcontact or no points in it.
    5. 11:54:54 Client: Object 2:921 (type Type_114) not found.
    6. 11:54:54 [11457,98.02,0.193,"XEH: PostInit started. MISSIONINIT: missionName=crCTI_Proman_RHS_v1_09, missionVersion=53, worldName=WL_Rosche, isMultiplayer=true, isServer=false, isDedicated=false, CBA_isHeadlessClient=false, hasInterface=true, didJIP=true"]
    7. 11:54:54 [11457,98.054,0.193,"CBA_VERSIONING: cba=3.9.0.181012, "]
    8. 11:54:54 [11457,98.063,0.193,"XEH: PostInit finished."]
    9. 11:54:54 [">>>>>>>>>>>>>>>>>>>>>>>>","WL_Rosche","WL_Rosche"]
    10. 11:54:54 "CBA detected, waiting for CBA INIT."
    11. 11:54:54 "CBA OK."
    12. 11:54:54 [11458,98.315,0.293,"CBA_VERSIONING_SERVER: cba=3.9.0.181012, "]
    13. 11:54:54 a3\structures_f_exp\signs\companies\cornerads_01_v2_f.p3d: No geometry and no visual shape
    14. 11:54:55 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    15. 11:54:55 Warning Message: No entry '.gridNumbersOverLines'.
    16. 11:54:55 Warning Message: '/' is not a value
    17. 11:54:55 Warning Message: No entry '.centerPosition'.
    18. 11:54:55 Warning Message: []: '/' not an array
    19. 11:54:55 Cannot evaluate '' - no file
    20. 11:54:55 Warning Message: []: '/' not an array
    21. 11:54:55 Cannot evaluate '' - no file
    22. 11:54:55 Mission id: 95fdc7b80e79004521f1e07a1eeecae4875b0177
    23. 11:54:56 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    24. 11:54:56 Warning Message: No entry '.description'.
    25. 11:54:56 Warning Message: '/' is not a value
    26. 11:54:56 "6.45943 1 0 0"
    27. 11:54:57 "InitPlayer.sqf Player 76561198084560137"
    28. 11:54:57 "InitPlayer.sqf Player 76561198084560137 Waiting."
    29. 11:54:57 "InitPlayer.sqf Player 76561198084560137 Finish."
    30. 11:55:03 Client: Object 2:921 (type Type_114) not found.
    31. 11:55:03 Client: Object 2:921 (type Type_114) not found.
    32. 11:55:03 Client: Object 2:921 (type Type_114) not found.
    33. 11:55:15 Object id 97a7b7ba (1978) not found in slot 246,189
    34. 11:55:15 In last 3000 miliseconds was lost another 305 these messages.
    35. 11:55:15 Link cannot be resolved
    36. 11:55:15 In last 3000 miliseconds was lost another 305 these messages.
    37. 11:55:18 Client: Object 2:921 (type Type_114) not found.
    38. 11:55:19 Object id 97a7a803 (3) not found in slot 245,189
    39. 11:55:19 In last 3000 miliseconds was lost another 12 these messages.
    40. 11:55:19 Link cannot be resolved
    41. 11:55:19 In last 3000 miliseconds was lost another 12 these messages.
    42. 11:55:19 Client: Object 2:921 (type Type_114) not found.
    43. 11:55:19 Client: Object 2:921 (type Type_114) not found.
    44. 11:55:27 Object id 9bacfa92 (658) not found in slot 415,221
    45. 11:55:27 In last 3000 miliseconds was lost another 6 these messages.
    46. 11:55:27 Link cannot be resolved
    47. 11:55:27 In last 3000 miliseconds was lost another 6 these messages.
    Alles anzeigen
    Warum reiben sich Frauen morgens nach dem Aufstehen die Augen?
    Weil sie keine Eier zum Kratzen haben!


    tactical faction action & insurrection
    steamcommunity.com/sharedfiles/filedetails/?id=697756742
  • Quellcode

    1. 12:18:08 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    2. 12:18:08 Warning Message: No entry '.description'.
    3. 12:18:08 Warning Message: '/' is not a value
    4. 12:18:09 [11425,104.93,0.182,"XEH: PostInit started. MISSIONINIT: missionName=crCTI_Proman_RHS_v1_09, missionVersion=53, worldName=WL_Rosche, isMultiplayer=true, isServer=false, isDedicated=false, CBA_isHeadlessClient=false, hasInterface=true, didJIP=true"]
    5. 12:18:09 [11425,104.964,0.182,"CBA_VERSIONING: cba=3.9.0.181012, "]
    6. 12:18:09 [11425,104.97,0.182,"XEH: PostInit finished."]
    7. 12:18:09 "CBA detected, waiting for CBA INIT."
    8. 12:18:09 "CBA OK."
    9. 12:18:09 [11426,105.256,0.282,"CBA_VERSIONING_SERVER: cba=3.9.0.181012, "]
    10. 12:18:10 a3\structures_f_exp\signs\companies\cornerads_01_v2_f.p3d: No geometry and no visual shape
    11. 12:18:11 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    12. 12:18:11 Warning Message: No entry '.gridNumbersOverLines'.
    13. 12:18:11 Warning Message: '/' is not a value
    14. 12:18:11 Warning Message: No entry '.centerPosition'.
    15. 12:18:11 Warning Message: []: '/' not an array
    16. 12:18:11 Cannot evaluate '' - no file
    17. 12:18:11 Warning Message: []: '/' not an array
    18. 12:18:11 Cannot evaluate '' - no file
    19. 12:18:11 Mission id: 8fd0b520cb9d0050dee54c68788d4c26a4456cd8
    20. 12:18:11 Warning Message: No entry 'bin\config.bin/CfgWorlds.WL_Rosche'.
    21. 12:18:11 Warning Message: No entry '.description'.
    22. 12:18:11 Warning Message: '/' is not a value
    23. 12:18:12 Object id b16222b3 (691) not found in slot 68,395
    24. 12:18:12 In last 3000 miliseconds was lost another 248 these messages.
    25. 12:18:12 Link cannot be resolved
    Alles anzeigen
    Funzt leider auch nicht. Komme wieder ganz normal in die laufende Mission rein.
    Warum reiben sich Frauen morgens nach dem Aufstehen die Augen?
    Weil sie keine Eier zum Kratzen haben!


    tactical faction action & insurrection
    steamcommunity.com/sharedfiles/filedetails/?id=697756742
  • Das hier probieren:

    Brainfuck-Quellcode

    1. // init.sqf
    2. diag_log ["<<<<<<<<<<<<<<<<<", worldName, isClass (configFile >> "CfgWorlds" >> worldName)];
    3. if (hasInterface && !isClass (configFile >> "CfgWorlds" >> worldName)) then {
    4. 0 spawn {
    5. // kick
    6. diag_log ["<<<<<<<<<<<<<<<<< kick"];
    7. waitUntil {!isNull findDisplay 46};
    8. findDisplay 46 closeDisplay 0;
    9. diag_log ["<<<<<<<<<<<<<<<<< kicked"];
    10. };
    11. };
    Alles anzeigen
    RPT posten. Danke.