Sviluppo del gioco distribuito e sicurezza del codice sorgente

-2

Penso che questa domanda sia già stata posta molte volte, ma non riesco a trovarne nessuna. Ho un progetto di gioco (sto usando Marmalade) e alcuni sviluppatori fidati, ma voglio invitare di più. Per aggiungere alcune funzionalità, per scrivere script e così via. La domanda è: come posso non dare loro l'intero codice sorgente (forse solo una parte compilata), e / o dare loro diritti limitati al progetto per fare il loro lavoro, ma non ho l'opportunità di rubare il codice ?

    
posta user2987175 12.08.2014 - 09:47
fonte

3 risposte

8

Diritti e capacità sono molto diversi. In effetti, i diritti legali sono stati inventati in gran parte perché i problemi di accesso non potevano essere risolti applicando capacità tecniche. Certo, mettiamo le serrature sulle nostre macchine e case; ma questo è davvero solo un primo livello di difesa per scoraggiare gli atti di vandalismo casuali - un criminale di carriera non è scoraggiato, e nemmeno molto ostacolato. C'è anche uno strato di convenzioni legali su cui ci basiamo e, tutto sommato, la protezione legale è più importante: non previene gli abusi individuali, ma ha tutto il peso dello stato e della comunità dietro di esso, e quando colpisce, il colpevole sta andando giù.

Applicato alla tua domanda: la legge sul software, scomoda e difficile come può essere, è quasi certamente più importante per proteggere le tue risorse rispetto al controllo degli accessi. È improbabile che tu possa veramente separare parti della tua applicazione in modo che altri possano fare un lavoro utile solo su parti. Nel complesso, è quasi certamente meglio avere un accordo legale in vigore e tenerlo premuto piuttosto che provare a stabilire controlli tecnici che sono probabilmente inefficaci o che ostacolano il loro lavoro.

Se ti stai contraendo in un'area in cui non ti fidi del sistema legale per proteggerti, allora sei praticamente da solo. In una situazione del genere vorrei seriamente riconsiderare se dovresti essere in outsourcing.

    
risposta data 12.08.2014 - 10:05
fonte
1

Dovrai dividere il repository del codice (assumendo che tu voglia concedere loro l'accesso al repository) o avere un SCN che ti permetta di impostare i permessi di accesso in modo che alcuni gruppi non possano leggere parti del repository. Se usi git, sei bloccato con il primo, dividendo il codice in moduli e dando solo accesso ad alcuni moduli.

Dovrai determinare quanta parte del codice è richiesta per il loro accesso, se hanno solo bisogno di binari (e intestazioni / wdsl / etc) allora potresti memorizzare i binari e le fonti richieste in un nuovo repository (popolato automaticamente dal tuo Sistema CI) e concedere loro l'accesso.

Dovrai dire di più per ottenere risposte migliori, senza conoscere i dettagli specifici, la tua domanda è un po '"generica".

    
risposta data 12.08.2014 - 09:56
fonte
0

Avere il nucleo del tuo motore di gioco come un binario, ma implementare la maggior parte dei sistemi e componenti rilevanti per il gameplay sotto forma di plugin compilati separatamente che utilizzano un'API comune per comunicare con il core engine. Questo dovrebbe consentire agli sviluppatori di creare plugin con solo le versioni binarie del core e degli altri plugin. Questa architettura può quindi essere utilizzata anche dai modder per creare componenti aggiuntivi di terze parti per il tuo gioco.

Tuttavia, ci sarà molto lavoro e non sarà il modo più produttivo di lavorare per i membri del tuo team. Quando vuoi essere produttivo, dovresti semplicemente dare loro l'accesso alla fonte e controllarli legalmente facendoli firmare un accordo di non divulgazione. Ricorda inoltre che mantieni il copyright del tuo codice anche quando lo mostri ad altri. Quindi, quando rubano davvero il tuo codice e puoi provarlo, puoi denunciarli per violazione del copyright.

    
risposta data 12.08.2014 - 16:27
fonte

Leggi altre domande sui tag