PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe mit Shotgun.


Mr.g-c
04.06.2008, 01:21
Hi, ich habe vor, aus dem Sixt-Sense mod (mit der genemigung von Sickboy) die shotgun als stand-alone addon zu "machen".
Kann mir damit jemand helfen? Ich habe:
- mossberg.p3d
- m500.jpg
- shotgunreload.wav
- mosbergfire.wav

Und dann die files (wie wir glauben) für alle waffen des sixt-sense mods:
- cfgMagazines.hpp
- cfgPatches.hpp
- cfgWeapons.hpp
- std-weap-mags.hpp

Ok so, wie macht man das als eigenes addon? Was muss ich tun/extrahieren aus den config-files?

Dann wundere ich mich das in der config vieles mit "six....." anfängt, also recoil usw... muss man logischerweise ersetzen wenn es ohne den mod laufen soll, richtig?
class SIX_M500: SIX_M107
{
displayName = "M500 Shotgun";

model = "\vilas_mod_models\mossberg";
modeloptics="-";
picture = "\vilas_mod\m500.jpg";

SIX_OpticsZoom
opticsFlare = 1;
soundContinuous = 0;
sound[] = {"\vilas_mod\mosbergfire.wav", 8.0, 0.7};
drySound[] = {"\ca\Weapons\Data\Sound\M21_dry_v1", 0.000316228, 1};
reloadMagazineSound[] = {"\vilas_mod\shotgunreload.wav", 0.00316228, 1};
minRange = 2;
minRangeProbab = 0.1;
midRange = 25;
midRangeProbab = 0.7;
maxRange = 70;
maxRangeProbab = 0.01;
//dispersion = 0.005 * SIX_DispersionCoef;
magazines[] = {"SIX_6Rnd_moss"};
autofire=0;
reloadTime = 0.35;
backgroundReload = 1;
recoil = "SIX_223Recoil";
recoilProne = "SIX_223RecoilProne";
aiRateOfFire = 10.0;
aiRateOfFireDistance = 800;

class Library
{
libTextDesc = "Mossberg Persuader 500 shotgun";
};
};

Mfg Christian

burns
04.06.2008, 01:41
harr harr, das ist geil an den 6th Mods, ohne Wissen kapiert man den .hpp Mischmasch nie.
Hab mich da auch schon 2 oder 3 Mal erfolglos dran versucht.

Grundsätzlich würde es reichen ein beliebiges Waffenaddon herzunehmen und alle baseclasses daraus mit den bestehenden aus den 6th .hpp´s abzugleichen sodaß du nur das rüberholst was auch wirklich nötig ist.

Dabei muss allerdings die Vererbung intakt bleiben, und daaa liegt der Hund begraben.
flicki verwies mich auf:

Vererbung (Programmierung) – Wikipedia (http://de.wikipedia.org/wiki/Vererbung_%28Programmierung%29)
C++-Programmierung: Vererbung - Wikibooks (http://de.wikibooks.org/wiki/C%2B%2B-Programmierung:_Vererbung)

:D




Dann wundere ich mich das in der config vieles mit "six....." anfängt, also recoil usw... muss man logischerweise ersetzen wenn es ohne den mod laufen soll, richtig?

Muss nicht, du kannst es von BulletBase (oder wie das noch hiess) aus vererben ;)

King Homer
04.06.2008, 08:27
Bei Standalone-Addons ist es eben wichtig das die Inheritance (Vererbung) auf BI Waffen basiert und nicht auf SIX Waffen, da diese sonst zur Nutzung des Addons auch benötigt werden.

Da es standardmäßig keine Shotgun in Arma gibt würde ich als Basis einfach "Rifle" nehmen. Und alles das an einem anderen Ort definiert ist wie z.B. "SIX_OpticsZoom" muss dann direkt mit dem Wert in die Config übernommen werden.

Mr.g-c
04.06.2008, 11:20
Ok.... also, kann mir jemand schritt für schrit sagen was ich machen soll/muss?
Welche Dateien müssen später in die .pbo? Wie müssen diese heissen? Was muss darin sein? welche Pfade für die sounds? Was ist mit der Munition? Wie ist der/die Classnames für Waffe und Munition?


Usw.... wäre nett wenn sich jemand mal ein paar Minuten opfern könnte um mir zu helfen....

King Homer
04.06.2008, 12:04
Wenn du ein Standalone-Addon willst muss alles in die PBO was nocht nicht in Vanilla Arma vorhanden ist. Heißt: Texturen, Modelle, Sounds, Configs, Scripts.

modEmMaik
04.06.2008, 13:48
Hoi Christian,

guck dir mal die Beowulf .50 (http://www.armaholic.com/page.php?id=3168) an, die nat wenigstens eine klar lesbare Config und ist vererbt von der M4:

Hier mal die Sektionen:
CfgPatches: Definiert wie die Addons später in eine Missi eingebunden werden (JG_Beo braucht man später unter den Addons in der Missi, um die Waffe zu haben).

CfgSkeletons: Hier sind Sachen drin, die mit dem Model (also das p3d) zusammenhängen. Weiss ich selbst nicht viel darüber und hab's zumeist erst mal ohne die Sektion probiert und bei Fehlern vom Original übernommen).

CfgModels: Modelbezogen anscheinend wegen der Animationen. Hab' ich selber nur weggelassen / übernommen.

CfgAmmo / CfgMagazines: Denke ich mal, erklärt sich von selbst aus dem Namen. Bestimmt, welche Muni das Ding verschiessen kann.

CfgWeapons: In meinen Augen ist das der Hauptbestandteil. Hier siehst Du gleich die Vererbung beginnend mit Default. Ich hab's eigentlich immer versucht, möglichst wenige Angaben drin zu haben. Eine Definition via
class CfgWeapons
{
class M500 : Rifle
{
...
}
}
Könnte wohl auch klappen...

CfgVehicles beinhaltet die spielbaren Units, die die Waffe haben.

A und O an der Sache ist, dass man erst mal was Kleines zusammenbastelt und nach und nach erweitert (z.B. erst mal eine M4 nehmen und das Model der Mossberg reinpacken). Hat den Vorteil, dass man immer wieder ingame testen kann, weil ArmA recht oft was übel nimmt und einfach wegstürzt :ugly:

Ach Mist.... ging ja nicht nur um die Config :confused:

Wegen Model und Texturen hab' ich immer erst mal mit einem Hexeditor (Notepad++ incl. hexedit Addon) das Model (.p3d) angeschaut welche .paa Files benutzt werden, und habe den Pfad (vilas_mod_models) verändert, um ingame mein standalone und auch das Original testen zu können. Sonst beissen die sich. Bei fehlenden Texturen reagiert ArmA recht angenehm und zeigt die Textur in Klartext an. Beim nächsten Versuch hat ArmA immer den Test gestartet und die Textur wegelassen (weisse Bereiche, wo die Textur fehlt).
Kann man aber alles auch im O2 machen... wenn man weiss, wie man mit O2 umgeht. Mir ist's zu komplex, daher hab' ich immer den Hexeditor benutzt. :rolleyes:

Welche Dateien müssen später in die .pbo? Wie müssen diese heissen? Was muss darin sein? welche Pfade für die sounds? Was ist mit der Munition? Wie ist der/die Classnames für Waffe und Munition?

A) Alles was das .p3d enthält plus deine config.
B) So wie im Original enthalten ist. Ich empfehle den Pfad in der Config, und im .p3d über den Hexeditor, geringfügig zu ändern: vilas_mod_models -> vilas_mossberg_1 (gleiche Anzahl Characters).
Config z.B.:
class CfgWeapons
{
class M500 : Rifle
{
displayName = "M500 Shotgun";
// Original: model = "\vilas_mod_models\mossberg";
model = "\vilas_mossberg_1\mossberg";
...
}
}
Das bestimmt, wie das Hauptverzeichnis deines Addons heisst und Du brauchst für den ersten Test des geänderten .p3d nur das Vereichnis vom Original übernehmen und umzubenennen.
c) Und folgend: Erst mal vom Original übernehmen und nach und nach aussieben ;)

SmartGun
04.06.2008, 14:42
Hoi!

guck mal ob du damit was anfangen kannst^^

#define private 0
#define protected 1
#define public 2
#define true 1
#define false 0
#define TEast 0
#define TWest 1
#define TGuerrila 2
#define TCivilian 3
#define TSideUnknown 4
#define TEnemy 5
#define TFriendly 6
#define TLogic 7
class CfgPatches {
class mossber500 {
units[] = {};
weapons[]={"mossberg500"};
requiredVersion = 1.08;
requiredAddons[] = {"caweapons","caSounds"};
};
};
class CfgRecoils
{
custom_shot[]= {0, 0, 0, 0.08, 0.003, 0.02, 0.05, -0.003, -0.050, 0.05, 0, 0};
};
class CfgAmmo
{
class Default;
class BulletCore;
class BulletBase;
class B_762x51_3RndBurst;
class B_20mm_AA;
class GrenadeBase;
class G_40mm_HE;
class ku_12_gauge_buck : B_762x51_3RndBurst
{
hit = 8;
indirectHit=5;
indirectHitRange=1;
cartridge = "FxCartridge";
timeToLive = 1;
cost = 5;
typicalSpeed = 500;
airFriction = -0.001650;
};
class ku_12_gauge_slug : BulletBase
{
hit = 12;
cartridge = "FxCartridge";
//timeToLive = 1;
cost = 6;
typicalSpeed = 600;
airFriction = -0.001650;
};
};
class CfgMagazines
{
class Default;
class CA_Magazine;
class 5Rnd_762x51_M24;
class 1Rnd_HE_GP25;

class 6Rnd_12_gauge_buck: 5Rnd_762x51_M24 {
scope = 2;
value = 1;
displayName = "Shotgun Buckshots";
picture = "\rem870\inv\buck_shot.paa";
ammo = "ku_12_gauge_buck";
count = 6;
initSpeed = 400;
class Library {
libTextDesc = "The BUCK SHOT fires 27 # 004 buck shot balls at 1,100 fps.<br> Massive and lethal injuries are usually produced.";
};
};
class 6Rnd_12_gauge_slug: 5Rnd_762x51_M24 {
scope = 2;
value = 2;
displayName = "Shotgun Slugs";
picture = "\rem870\inv\slug_shot.paa";
ammo = "ku_12_gauge_slug";
count = 6;
initSpeed = 600;
class Library {
libTextDesc = "The SLUG fires a 525 grain, large cavity hollow point slug at 1,100 fps. ";
};
};

};

class Mode_SemiAuto {};
class Mode_Burst : Mode_SemiAuto {};

class Mode_FullAuto : Mode_SemiAuto {};
class cfgWeapons {
class Default; // External class reference
class PistolCore; // External class reference
class RifleCore; // External class reference
class MGunCore; // External class reference
class LauncherCore; // External class reference
class GrenadeCore; // External class reference
class CannonCore; // External class reference
class GrenadeLauncher : Default {};
class RocketPods : LauncherCore {};
class MissileLauncher : LauncherCore {};
class MGun : MGunCore {};
class rifle : riflecore{};
class mossberg500: Rifle{
scope = 2;
displayName = "mossberg 500";
model = "\rem870\mossberg";
picture = "\rem870\inv\remington870.paa";
opticsFlare = 1;
opticsZoomMin = 0.27;
opticsZoomMax = 0.42;
distanceZoomMin = 50;
distanceZoomMax = 50;
soundContinuous = 0;
sound[] = {"\rem870\sound\shotgun12gauge.ogg",db-50, 1};
drySound[] = {"\ca\Weapons\Data\Sound\M16_cock_v1", db-20, 1};
reloadMagazineSound[] = {"\rem870\sound\shotgun12gauge-reload.ogg", 1, 1};
minRange = 2;
minRangeProbab = 0.100000;
midRange = 50;
midRangeProbab = 0.650000;
maxRange = 75;
maxRangeProbab = 0.040000;
dispersion = 0.01;
magazines[] = {"6Rnd_12_gauge_slug","6Rnd_12_gauge_buck"};
autofire=0;
magazineReloadTime = 10;
reloadTime = 0.8;
backgroundReload = 1;
recoil = "custom_shot";
flash = "gunfire";
flashSize = 0.5;
//recoil = "HMG4";
//recoilProne = "HMG4P";
value = 1000;
aiRateOfFire = 2.50;
aiRateOfFireDistance = 120;

class Library {
libTextDesc = "Laenge: 1.060 mm<br>Lauflaenge: 533 mm<br>Gewicht: 3,6 kg (geladen)<br>Kaliber: Kaliber 12 (18,53mm)<br>Muendungsgeschwindigkeit: ca. 400 m/s<br>effektive Schussweite: 40 m<br>Munitionszufuhr: Rohrmagazin mit 6 Schuss.";
};
};

};



**edit***


eigentlich sollte es reichen, wenn du in der config einfach nur die pfade zu model, sounds und pictures änderst.
Auch die texturpfade in der mossbeg.p3d müssen angepasst werden.

burns
04.06.2008, 16:25
Auch die texturpfade in der mossbeg.p3d müssen angepasst werden.

Wenn nicht mit o² sondern mit dem Hexeditor gemacht,
müssen die exakten Pfadlängen beibehalten werden, sonst hauts das p3d kaputt.

bsp.:

addon123\textur.paa - Originalpfad
addon321\textur.paa - geänderter Pfad
superaddon123\textur.paa - verkackter Pfad

King Homer
04.06.2008, 17:22
Dazu am besten Fred benutzen.

burns
04.06.2008, 17:26
Ich hab Fred aber nicht :sds:
Stell doch mal bitte nen Link rein :)

modEmMaik
13.06.2008, 11:17
Gibt's schon was neues, Christian? :)

Ich bin mit meinem eigenen Addon schon auf so mache Falle getapst. :zahn:

Freue mich aber auf deine Mossberg Shotgun :daumen:

Duke49th
13.06.2008, 11:47
Ich hab Fred aber nicht :sds:
Stell doch mal bitte nen Link rein :)

FRED text editor (http://en.wikipedia.org/wiki/FRED_(text_editor))

:)

burns
13.06.2008, 12:47
FRED text editor (http://en.wikipedia.org/wiki/FRED_(text_editor))

:)

Asooo, dachte das wär wieder eins von diesen geheimen & inoffiziellen OFP/ArmA Tools
- genau wie MikePBO, welches ich mittlerweile nach 3 Jahren zwar hab, aber keinen Nutzen mehr dafür finde :ugly:

Thx fürn Tipp :D

Mr.g-c
16.06.2008, 21:18
Gibt's schon was neues, Christian? :)

Ich bin mit meinem eigenen Addon schon auf so mache Falle getapst. :zahn:

Freue mich aber auf deine Mossberg Shotgun :daumen:
War auch ohne wirklichen nutzen eurer hilfe noch am selben Tag erledigt. Ich habe die shotgun aus dem FFN mod genommen und alle config-parts welche gebraucht wurden rausgenommen, neue Munitionsarten erschaffen, binarized und fertig wars.

Danke trotzdem! Jetzt da ich "Smartguns" config sehen, dass hätte mir viel arbeit ersparrt. Aber ich hatte eh in die Original BIS-Config geschaut....

Configs sind wirklich einfach und sau schnell zu erlernen.

modEmMaik
17.06.2008, 07:59
Und.... wo kann ich mir dasMossberg saugen???? :)

Wurde sie gerne ausprobieren ;)