I danni inflitti a crota con la spada.

« Older   Newer »
  Share  
briosheje
view post Posted on 20/2/2015, 14:50     +1   +1   -1




CITAZIONE (HiddenNebula @ 20/2/2015, 14:43) 
Il simulatore in cosa è fatto??? C++? Cioè è un applicativo proprio oppure un semplice file excell?

Javascript.

E' un po' scritto da schifo per gli standard a cui sono abituato, ma era giusto per avere qualcosa con cui divertirsi.

Source:

JS:
CODICE
var damages = {
   33: {
       RT:        15301,
       SUP:     18001,
       RB:        7201,
       UPPERCUT:  12601
   },
   30: {
       RT:        22501,
       SUP:     30242,
       RB:        10589,
       UPPERCUT: 21170
   }
};

var x, combos, playerLevel, crotaLevel;

var updatePlayerLevel = (function updatePlevel( callback ) {
   playerLevel = $('#plvl').val();
   
   if (callback || typeof(callback) == 'function') {
       callback();
   }
   return updatePlevel;
}());

var updateCrotaLevel = (function updateClevel (callback) {
   crotaLevel = $('#crotalvl').val();
   x = damages[crotaLevel];
   combos = {
   FAIL:     {
               formula: 0,
               description: "No attack."
            },
   RT3:     {
               formula: x.RT * 3,
               description: "RT RT RT"
            },
   RT4:     {
               formula: x.RT * 4,
               description: "RT RT RT RT"
            },
   RTS:     {
               formula: (x.RT * 3 + x.SUP),
               description: "RT RT RT SUPER"
            },
   RB6:     {
               formula: x.RB * 6,
               description: "RB RB RB RB RB RB... Seriously? are you serious? no..?"
            },
   RB6S:    {
               formula: parseInt(parseInt(x.RB * 6) + x.SUP),
               description: "RB RB RB RB RB RB SUPER... No, please. No."
            },
   RB2U:    {
               formula: parseInt((x.RB * 2 + x.UPPERCUT)*2),
               description: "RB RB RT[uppercut] RB RB RT[uppercut]"
            },
   RB2US:   {
               formula: parseInt(parseInt(x.RB * 2 + x.UPPERCUT)*2 + x.SUP),
               description: "RB RB RT[uppercut] RB RB RT[uppercut] SUPER <-- YEAH, SOUNDS GREAT!"
            },
   RB2URT:  {
               formula: parseInt((x.RB * 2 + x.UPPERCUT)*2) + x.RT,
               description: "RB RB RT[uppercut] RB RB RT[uppercut] RT"
            },
   RB2URTS: {
               formula: parseInt((x.RB * 2 + x.UPPERCUT)*2) + x.RT + x.SUP,
               description: "RB RB RT[uppercut] RB RB RT[uppercut] RT SUPER <-- Greatest."
            },
   RTSRTS3: {
               formula: (x.RT + x.SUP) * 3,
               description: "RT SUPER RT SUPER RT SUPERT <-- Exploit for dummies."
            }
};
   if (callback || typeof(callback) == 'function') {
       callback();
   }
   return updateClevel;
}());

// INIT dom.
var combosHTMLs = "";
for (var i in combos) {
combosHTMLs += "<option value=\""+i+"\">"+combos[i].description+"</option>";
}

$('.round').html(combosHTMLs);

// Dom listeners

$('#crotalvl').change(function (e) {
  updateCrotaLevel();
});

$('#plvl').change(function (e) {
   playerLevel = $(this).val();
});

$('#sim').on('click', function (e) {
   $('#result').html("-------------------------------<br />");
   $('#result').append("CROTA'S BATTLE STARTED! <br />");
   $('#result').append("<br />INIT::");
   $('#result').append("<br />Player Level: "+playerLevel);
   $('#result').append("<br />Crota's Level: "+crotaLevel+"<br />");
   $('#result').append("-------------------------------<br />");
   var crotaHPs = 250000;
   for (var i = 1; i <= 5; i++) {
       if (crotaHPs <= 0) {
        $('#result').append("CROTA IS DEAD! <br />");
           break;
       }
       else {
           var roundDamage = 0;
           var currentRound = "#r"+i+" select";
           $('#result').append("-------------------------------<br />");
           $('#result').append("--------ROUND "+i+"--------------<br />");
           $('#result').append("-------------------------------<br />");
           $('#result').append("Crota's HPs Left: "+crotaHPs+"<br /><br />");
           $(currentRound).each(function(index){
               if (typeof(index) !== 'undefined') {
                   if ($(this).val() == 'FAIL') {
                    $('#result').append("> player didn't attack for his own reasons. <br />");  
                   }
                   else {
                      var damage = combos[$(this).val()].formula;
                      crotaHPs -= damage;
                       $('#result').append("> player dealt "+damage+" to crota using the comfort combo '"+combos[$(this).val()].description+"'... "+crotaHPs+" left.. <br />");
                       if (crotaHPs <= 0) {
                           return false;
                       }
                   }
               }
           });
       }
   }
});


JS minimizzato (per comfort):

CODICE
var damages={33:{RT:15301,SUP:18001,RB:7201,UPPERCUT:12601},30:{RT:22501,SUP:30242,RB:10589,UPPERCUT:21170}},x,combos,playerLevel,crotaLevel,updatePlayerLevel=function e(r){return playerLevel=$("#plvl").val(),(r||"function"==typeof r)&&r(),e}(),updateCrotaLevel=function r(e){return crotaLevel=$("#crotalvl").val(),x=damages[crotaLevel],combos={FAIL:{formula:0,description:"No attack."},RT3:{formula:3*x.RT,description:"RT RT RT"},RT4:{formula:4*x.RT,description:"RT RT RT RT"},RTS:{formula:3*x.RT+x.SUP,description:"RT RT RT SUPER"},RB6:{formula:6*x.RB,description:"RB RB RB RB RB RB... Seriously? are you serious? no..?"},RB6S:{formula:parseInt(parseInt(6*x.RB)+x.SUP),description:"RB RB RB RB RB RB SUPER... No, please. No."},RB2U:{formula:parseInt(2*(2*x.RB+x.UPPERCUT)),description:"RB RB RT[uppercut] RB RB RT[uppercut]"},RB2US:{formula:parseInt(2*parseInt(2*x.RB+x.UPPERCUT)+x.SUP),description:"RB RB RT[uppercut] RB RB RT[uppercut] SUPER <-- YEAH, SOUNDS GREAT!"},RB2URT:{formula:parseInt(2*(2*x.RB+x.UPPERCUT))+x.RT,description:"RB RB RT[uppercut] RB RB RT[uppercut] RT"},RB2URTS:{formula:parseInt(2*(2*x.RB+x.UPPERCUT))+x.RT+x.SUP,description:"RB RB RT[uppercut] RB RB RT[uppercut] RT SUPER <-- Greatest."},RTSRTS3:{formula:3*(x.RT+x.SUP),description:"RT SUPER RT SUPER RT SUPERT <-- Exploit for dummies."}},(e||"function"==typeof e)&&e(),r}(),combosHTMLs="";for(var i in combos)combosHTMLs+='<option value="'+i+'">'+combos[i].description+"</option>";$(".round").html(combosHTMLs),$("#crotalvl").change(function(){updateCrotaLevel()}),$("#plvl").change(function(){playerLevel=$(this).val()}),$("#sim").on("click",function(){$("#result").html("-------------------------------<br />"),$("#result").append("CROTA'S BATTLE STARTED! <br />"),$("#result").append("<br />INIT::"),$("#result").append("<br />Player Level: "+playerLevel),$("#result").append("<br />Crota's Level: "+crotaLevel+"<br />"),$("#result").append("-------------------------------<br />");for(var e=25e4,r=1;5>=r;r++){if(0>=e){$("#result").append("CROTA IS DEAD! <br />");break}var R="#r"+r+" select";$("#result").append("-------------------------------<br />"),$("#result").append("--------ROUND "+r+"--------------<br />"),$("#result").append("-------------------------------<br />"),$("#result").append("Crota's HPs Left: "+e+"<br /><br />"),$(R).each(function(r){if("undefined"!=typeof r)if("FAIL"==$(this).val())$("#result").append("> player didn't attack for his own reasons. <br />");else{var R=combos[$(this).val()].formula;if(e-=R,$("#result").append("> player dealt "+R+" to crota using the comfort combo '"+combos[$(this).val()].description+"'... "+e+" left.. <br />"),0>=e)return!1}})}});


HTML (esclusa HEAD, BODY ecc.) :

CODICE
Crota's level: <br />

<select id="crotalvl">
   <option value="30" selected>30</option>
   <option value="33">33</option>
</select><br />

Player level: <br />
<select id="plvl">
   <option value="30" disabled>30</option>
   <option value="31" disabled>31</option>
   <option value="32" selected>32</option>
</select>
   
<br />

<div id="r1">
   <span class="r">Round 1:</span><br />
   <select class="round" data-round="1.0"></select><br />
   <select class="round" data-round="1.1"></select><br />
   <select class="round" data-round="1.2"></select><br />
</div>
<div id="r2">
   <span class="r">Round 2:</span><br />
   <select class="round" data-round="2.0"></select><br />
   <select class="round" data-round="2.1"></select><br />
   <select class="round" data-round="2.2"></select><br />
</div>
<div id="r3">
   <span class="r">Round 3:</span><br />
   <select class="round" data-round="3.0"></select><br />
   <select class="round" data-round="3.1"></select><br />
   <select class="round" data-round="3.2"></select><br />
</div>
<div id="r4">
   <span class="r">Round 4:</span><br />
   <select class="round" data-round="4.0"></select><br />
   <select class="round" data-round="4.1"></select><br />
   <select class="round" data-round="4.2"></select><br />
</div>
<div id="r5">
   <span class="r">Round 5:</span><br />
   <select class="round" data-round="5.0"></select><br />
   <select class="round" data-round="5.1"></select><br />
   <select class="round" data-round="5.2"></select><br />
</div>
<input type="button" value="simulate" id="sim">
   
   
<div id="result">
   
</div>


jsfiddle live:

http://jsfiddle.net/briosheje/b7b8b1md/9/

<-- Ho aggiornato il fiddle aggiungendo RT singolo e doppio RT..
 
Top
view post Posted on 20/2/2015, 14:54     +1   -1
Avatar

Leggenda

Group:
Member
Posts:
4,710
Reputation:
+10
Location:
Collinare

Status:


Grande uomo! Grande.... Uomo! :) Io stavo pensando di fare un applicativo in PHP da uppare su un server in maniera da renderlo disponibile per tutti :) Ma mi pare che hai gia fatto tutto tu! :)
 
Web  Top
briosheje
view post Posted on 20/2/2015, 14:57     +1   -1




CITAZIONE (HiddenNebula @ 20/2/2015, 14:54) 
Grande uomo! Grande.... Uomo! :) Io stavo pensando di fare un applicativo in PHP da uppare su un server in maniera da renderlo disponibile per tutti :) Ma mi pare che hai gia fatto tutto tu! :)

Puoi farlo anche in PHP se vuoi, ma per calcoli così "basici" è sufficiente lasciar fare al client tramite javascript.. Pensavo di abbellirlo un po' e di raccattare i dati dei danni al liv. 31 e 30 per poi caricarlo online magari.. Il problema è che non ho lo sbatti di raccogliere i dati al 31 e al 30.. Anche se la riduzione dovrebbe seguire la logica delle armi da fuoco.. ~-32.9% per livello.
 
Top
view post Posted on 20/2/2015, 15:03     +1   -1
Avatar

Leggenda

Group:
Member
Posts:
4,710
Reputation:
+10
Location:
Collinare

Status:


Bhè potremmo provare però a farlo... Sarebbe figo! :) Io ci so smanettare con PHP, Apache ecc ecc :) Hihihih
 
Web  Top
briosheje
view post Posted on 20/2/2015, 15:45     +1   -1




CITAZIONE (HiddenNebula @ 20/2/2015, 15:03) 
Bhè potremmo provare però a farlo... Sarebbe figo! :) Io ci so smanettare con PHP, Apache ecc ecc :) Hihihih

In php è un rischio, nel senso che hai da fare tutta la parte di sanificazione degli input per.. Due calcoli in croce...? Io la farei in javascript, basta adattare il codice che ho fatto sopra e sei a posto, al massimo se vuoi salvarti degli schemi pre-strutturati puoi usare i cookies.. Ma in ogni caso alla fine lascia il tempo che trova, nel senso che una volta che ti sei fatto il tuo calcolo sei manzo XD
 
Top
JimmoBz
view post Posted on 20/2/2015, 15:49     +1   -1




CITAZIONE (briosheje @ 20/2/2015, 11:10) 
Io di solito, in solo, riesco a fare RB RB RT RB RB RT RT senza alcun problema, e crota me lo tiro giu' io ;). La cosa dei 35 secondi non la sapevo, quello che so per certo è che dal momento in cui prendi la spada la spada dura 45 secondi se la droppi almeno una volta, mentre dura 40 secondi se NON la droppi. Per i tempi di spostamento non sapevo nemmeno quello.. andavo a "feeling", nel senso che me lo sentivo quando crota si stava per spostare, per cui mi sbrigavo :P

Curiosità mia: lo hai mai completato crota al 33 da spadaccino?
 
Top
view post Posted on 20/2/2015, 15:49     +1   -1
Avatar

Leggenda

Group:
Member
Posts:
4,710
Reputation:
+10
Location:
Collinare

Status:


Anche tu c'hai ragione :)
 
Web  Top
briosheje
view post Posted on 20/2/2015, 15:57     +1   -1




CITAZIONE (JimmoBz @ 20/2/2015, 15:49) 
CITAZIONE (briosheje @ 20/2/2015, 11:10) 
Io di solito, in solo, riesco a fare RB RB RT RB RB RT RT senza alcun problema, e crota me lo tiro giu' io ;). La cosa dei 35 secondi non la sapevo, quello che so per certo è che dal momento in cui prendi la spada la spada dura 45 secondi se la droppi almeno una volta, mentre dura 40 secondi se NON la droppi. Per i tempi di spostamento non sapevo nemmeno quello.. andavo a "feeling", nel senso che me lo sentivo quando crota si stava per spostare, per cui mi sbrigavo :P

Curiosità mia: lo hai mai completato crota al 33 da spadaccino?

Sì, 5 volte come spadaccino e 7 volte come supporter, tutte col titano al 32 con elmo di saint.

Se faccio supporter di solito vado a fare la bolla sui cavalieri di destra, se sono spadaro salto da destra se siamo su crota al 33.

Se siamo al 30 invece salto direttamente dal centro e droppo la spada almeno una volta per i 5 secondi extra.

Se sono da solo passo da destra, mollo la spada sull'angolo della roccia in modo tale che non cada, tiro due Gjalla, appena sparo il secondo prendo spada e faccio lo sprint rapido del titano + RB RB in modo tale da essere sotto crota prima ancora che si stia per inginocchiare.
 
Top
JimmoBz
view post Posted on 20/2/2015, 16:14     +1   -1




CITAZIONE (briosheje @ 20/2/2015, 15:57) 
CITAZIONE (JimmoBz @ 20/2/2015, 15:49) 
Curiosità mia: lo hai mai completato crota al 33 da spadaccino?

Sì, 5 volte come spadaccino e 7 volte come supporter, tutte col titano al 32 con elmo di saint.

Se faccio supporter di solito vado a fare la bolla sui cavalieri di destra, se sono spadaro salto da destra se siamo su crota al 33.

Se siamo al 30 invece salto direttamente dal centro e droppo la spada almeno una volta per i 5 secondi extra.

Se sono da solo passo da destra, mollo la spada sull'angolo della roccia in modo tale che non cada, tiro due Gjalla, appena sparo il secondo prendo spada e faccio lo sprint rapido del titano + RB RB in modo tale da essere sotto crota prima ancora che si stia per inginocchiare.

Come mai sul tuo profilo su http://destinytracker.com/destiny/overview/xbox/briosheje risulta che non lo hai mai completato nemmeno con un solo personaggio al 33?
 
Top
view post Posted on 20/2/2015, 16:30     +1   -1
Avatar

Leggenda

Group:
Member
Posts:
4,710
Reputation:
+10
Location:
Collinare

Status:


Scusate ma vi affidate a Destiny Tracker??!! -.-"
 
Web  Top
briosheje
view post Posted on 20/2/2015, 16:32     +1   -1




CITAZIONE (JimmoBz @ 20/2/2015, 16:14) 
CITAZIONE (briosheje @ 20/2/2015, 15:57) 
Sì, 5 volte come spadaccino e 7 volte come supporter, tutte col titano al 32 con elmo di saint.

Se faccio supporter di solito vado a fare la bolla sui cavalieri di destra, se sono spadaro salto da destra se siamo su crota al 33.

Se siamo al 30 invece salto direttamente dal centro e droppo la spada almeno una volta per i 5 secondi extra.

Se sono da solo passo da destra, mollo la spada sull'angolo della roccia in modo tale che non cada, tiro due Gjalla, appena sparo il secondo prendo spada e faccio lo sprint rapido del titano + RB RB in modo tale da essere sotto crota prima ancora che si stia per inginocchiare.

Come mai sul tuo profilo su http://destinytracker.com/destiny/overview/xbox/briosheje risulta che non lo hai mai completato nemmeno con un solo personaggio al 33?

Non lo so, infatti ho aperto un ticket su bungie.net (spammando ai "bungieHelp" sul forum, perché i ticket ufficialmente non si possono aprire) perché non mi ha nemmeno droppato lo shader, ho sempre e solo droppato 9 energie ascendenti (su 3 completate con loot) su xbox, se fai caso il mio profilo col titano segna anche "17" completion di crota 30, quando col titano ne ho fatte circa 50.

Altra cosa strana, nel mio "storage" (magazzino? quello della torre dico) ho delle armi segnate sul sito che però in gioco non trovo. Ho già aperto il ticket quasi due mesi fa per il discorso dello storage (mi è sparito un morte rossa e un suros) ma non ho ancora ricevuto risposta; Inoltre anche i marchi del crogiolo e dell'avanguardia segnati sono sbagliati (ne segna rispettivamente 29 del crogiolo e 51 dell'avanguardia, quando sono 181 del crogiolo e 174 dell'avanguardia).

Altra cosa, altrettanto strana, quando mi butta fuori con errori tipo "bee" o "beetle" mi considera le partite come completate anche se, effettivamente, non le ho completate, mentre spesso e volentieri quando gioco delle partite non me le segna nemmeno su bungie.net nello storico, oppure mi segna direttamente offline mentre sto giocando o online (in gioco) quando non sto giocando, tipo ora (che mi segna online anche se non sono online).

Non sono il primo che ha questi problemi purtroppo e l'unica risposta che ho avuto riguardo i problemi di drop è stata "eri sicuro di essere connesso ad internet?", mentre per il primo ticket delle armi del magazzino non hanno saputo darmi risposta, o forse non hanno nemmeno nessun interesse a darmela ;).

In ogni caso, giusto per darti idea di sapere di cosa parlo, crota al 33 l'ho fatto in due modi:

1) bolla sui cavalieri a destra e stanza degli orchi per gli orchi.
2) stanza degli orchi perenne, si esce solo quando crota è a sinistra / destra (ci si sposta di stanza in stanza) e si fa doppia bolla del titano.

Per tirare giu' crota uso questo setup:

RT RT RT
RT RT RT RT

RT RT RT
RT RT RT

[orchi]

RT RT [FURIA]
RT RT RT

Se il primo giro non riesco a fare il 4° RT lo faccio il secondo, preferibilmente però se c'è un cacciatore al 32 faccio spadare a lui, con la camo è molto piu' facile fare almeno una volta 4RT, spado io solo quando non ci sono altri cacciatori ;).

Edited by briosheje - 20/2/2015, 16:50
 
Top
Agesilao700
view post Posted on 20/2/2015, 16:38     +1   -1




Ma con Crota 33 cosa cambia?
 
Top
briosheje
view post Posted on 20/2/2015, 16:41     +1   -1




CITAZIONE (Agesilao700 @ 20/2/2015, 16:38) 
Ma con Crota 33 cosa cambia?

Cambia il danno inflitto a crota (in quanto crota è di livello maggiore) e cambia che quando crota scende sotto i 34000HP Circa va in furia in automatico (Jimmo ha postato prima la cifra esatta), oltre al fatto che non c'è il calice e che tutti i cavalieri sono ultra e che quando uccidi tutti e due i cavalieri su uno dei due lati spawna una maliarda al posto di un cavaliere, lol.
 
Top
view post Posted on 20/2/2015, 16:46     +1   -1
Avatar

Leggenda

Group:
Member
Posts:
4,710
Reputation:
+10
Location:
Collinare

Status:


Hard Mode! :)
 
Web  Top
Agesilao700
view post Posted on 20/2/2015, 16:50     +1   -1




Crota 33 lo abbiamo fatto con 3 spade, ma non so quali combo abbia usato... il problema sono gli orchi e noi prima del loro arrivo ci siamo messi proprio nella stanza dove spona sotto i due cecchini di destra... farlo a 33 con 2 spade sarebbe una favola...
 
Top
61 replies since 18/2/2015, 10:40   3102 views
  Share