beh non tergiversate molto le mie parole... il mio è un commento sulla bontà e sulla bellezza del codice scritto, non di certo sulle funzionalità che offre l'emulatore, infatti uno dei motivi che mi lasciava molto perplesso nel cambio emulatore da mangos a trinity era proprio questo, ma non mi sembra che nessun utente si sia lamentato, anzi la scelta del cambio ha riscosso un notevole successo all'interno della community a causa dei maggiori fix che apparentemente erano stati introdotti.
Si abbiamo un emulatore in cui la maggior parte delle spell funziona eccetera, ma se leggermente capite qualcosa di programmazione dovreste sapere che non è giusto, anzi è sbagliatissimo introdurre soluzioni personalizzate ad ogni singolo problema che ha l'emulatore..
Molti casi di bonus raddoppiati, sono dovuti proprio a questo fattore.
Faccio un esempio stupido per cercare di farmi capire meglio, ovviamente non ha nessun riscontro nel codice:
Ogni spell ha un massimo di tre effetti e questi effetti la fanno appartenere ad una categoria.
Ipotizziamo che l'effetto X abbia un bug nel codice e tutte le spell con quell'effetto fanno la metà del danno.
Il primo bug che gli utenti segnalano è:
Questa spell di questa classe fa la metà del danno.
Arriva il primo deficiente di turno che usa quella classe e dice... beh dai cosa ci vuole me lo faccio io il fix, prendo la mia spell ci scrivo danno x2 ok dai sono a posto spell fixata metto la patch e la mettono dentro trinity.
Ad un esame più approfondito un'altra persona nota che spell di alcuni bos / mob che hanno lo stesso effetto hanno tutte lo stesso bug, allora guarda il codice dell'effetto e dice ... o guarda qua i calcoli sono sbagliati prende corregge la patch è di buona stesura fixa molte spell la applicano...
Risultato:
il secondo committer non immaginava della patch del primo perchè gli pareva stupida e senza senso, proprio da non scrivere.
Il primo committer invece voleva semplicemente risolvere un bug che avrebbe sbilanciato il pvp.
Come effetto finale la spell fa doppio danno rispetto a quello che sia giusto.
Questo esempio è su una meccanica palese come quello del danno, immaginate di farlo per cose molto meno visibili tipo expertise o altro, per tantissimo tempo, forse mai la gente potrebbe accorgersi di un bug che sarebbe stato evitabilissimo.
Spesso questa smania di dover risolvere per forza un problema proposto a delle persone che non hanno idea di come funzioni qualcosa portano effetti stupidi. Il voler bilanciare a tutti i costi le classi e fixare tutte le loro spell, non sempre è sintomo di avere qualcosa di fatto bene e che funzioni perfettamente.
Spero di essermi spiegato un po' meglio su alcune problematiche.
Giusto per dire una cosa... ringraziate quei santi di compilatori moderni se i colpi melee o ranged qualche volta missano.
Ieri ho trovato questo pezzo di codice:
CODICE
int32 HitChance;
if (spellId || attType == RANGED_ATTACK || !haveOffhandWeapon())
HitChance = 95.0f;
else
HitChance = 76.0f;
sia 95.0f che 76.0f tradotti su una variabile di tipo int32 sono numeri mostruosi, molto superiori a 100...
Vale a dire che se avessimo compilato questo codice anche solo qualche anno fa avremmo che i colpi melee e ranged, non avrebbero mai la possibilità di fare miss...
volevo proprio complimentarmi con l'idiota che avrà scritto quella cosa perchè ci vuole parecchia fortuna ad essere così stupido e avere diritto di scrivere del codice...