You're question is pretty vague but I'll give it a try. 

You can change the app/design/frontend/base/default/template/newsletter/subscribe.phtml by copying it to your theme directory and adding the required checkboxes.

To actually process the data you would need to overwrite the controller. Inchoo (who else) has a great article about this. From a custom extension it would look something like this

config.xml

&lt;config&gt;
    &lt;frontend&gt;
        &lt;routers&gt;
            &lt;tag&gt;
                &lt;args&gt;
                    &lt;modules&gt;
                        &lt;[yourmodule]_newsletter before="Mage_Newsletter"&gt;[Yourmodule]_Newsletter&lt;/[yourmodule]_newsletter&gt;
                    &lt;/modules&gt;
                &lt;/args&gt;
            &lt;/tag&gt;
        &lt;/routers&gt;
    &lt;/frontend&gt;
&lt;/config&gt;


SubscriberController.php

require_once(Mage::getModuleDir('controllers','Mage_Newsletter').DS.'SubscriberController.php');

class [Yourmodule]_Newsletter_SubscriberController extends Mage_Newsletter_SubscriberController
{
   /**
      * New subscription action
      */
    public function newAction()
    {
        // edit the code from the origional Mage_Newsletter_SubscriberController::newAction
    }
}


From there on out what you want to do with the data is up to you, if you want to store it in the Magento newsletter table you will need to include an install script in your extension that modifies the existing table.

For that, again, we have an Inchoo article about installer scripts.

How to extend field in news letter in magento
I have the following text lines:

.add 7971 [Player: Sunfire (Account: 11309) X: 5839.623047 Y: 600.437439 Z: 650.839722 Map: 571 Selected player: Llubia (GUID: 19369)]  
.add 43956 [Player: Sunfire (Account: 11309) X: 5277.887695 Y: 2862.181641 Z: 446.735931 Map: 571 Selected none:  (GUID: 0)]  
.add 43956 [Player: Sunfire (Account: 11309) X: 5281.407715 Y: 2864.844482 Z: 446.735931 Map: 571 Selected player: Staticbaby (GUID: 19826)]  
.add 43956 [Player: Sunfire (Account: 11309) X: 5231.464844 Y: 1437.029175 Z: 648.498535 Map: 571 Selected player: Sunfire (GUID: 15295)]  
.add 44077 [Player: Sunfire (Account: 11309) X: 5231.464844 Y: 1437.029175 Z: 648.498535 Map: 571 Selected player: Sunfire (GUID: 15295)]  
.add 49285 [Player: Sunfire (Account: 11309) X: 16225.323242 Y: 16252.759766 Z: 12.790466 Map: 1 Selected none:  (GUID: 0)]  
.add 44115 175 [Player: Elmasguapo (Account: 11309) X: 1659.845093 Y: -4198.589844 Z: 56.382870 Map: 1 Selected none:  (GUID: 0)]  
.add 34078 [Player: Sunfire (Account: 11309) X: 16227.969727 Y: 16280.081055 Z: 13.175169 Map: 1 Selected none:  (GUID: 0)]  
.add  |cffffffff|Hitem:41427:0:0:0:0:0:0:0:80|h[Fuego de Artificio de Dalaran]|h|r 50 [Player: Sunfire (Account: 11309) X: 16221.392578 Y: 16260.944336 Z: 13.255954 Map: 1 Selected none:  (GUID: 0)]  
.add  |cffffffff|Hitem:45932:0:0:0:0:0:0:0:80|h[Gelatina Negra]|h|r [Player: Sunfire (Account: 11309) X: 5874.347168 Y: 679.056763 Z: 167.483719 Map: 571 Selected player: Assasins (GUID: 19438)]  
.add  |cffffffff|Hitem:45932:0:0:0:0:0:0:0:80|h[Gelatina Negra]|h|r [Player: Sunfire (Account: 11309) X: 5873.767090 Y: 679.386841 Z: 167.435257 Map: 571 Selected player: Assasins (GUID: 19438)]  
.add  |cffffffff|Hitem:45932:0:0:0:0:0:0:0:80|h[Gelatina Negra]|h|r [Player: Sunfire (Account: 11309) X: 16226.880859 Y: 16247.247070 Z: 12.286857 Map: 1 Selected player: Irmtarget (GUID: 18521)]  
.add  |cffffffff|Hitem:45932:0:0:0:0:0:0:0:80|h[Gelatina Negra]|h|r [Player: Sunfire (Account: 11309) X: 16229.297852 Y: 16251.202148 Z: 13.081388 Map: 1 Selected player: Irmtarget (GUID: 18521)]  
.add 41600 2 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 41600 1 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 40516 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 44661 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 40518 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 44005 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 45867 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  
.add 45316 [Player: Sunfire (Account: 11309) X: 16223.138672 Y: 16250.496094 Z: 12.431313 Map: 1 Selected player: Eifreen (GUID: 20341)]  


And I want to parse it so it outputs something like this:

Line 1 For example - 7971 Llubia
Line 3 For example - 43956 Staticbaby
Line 9 For Example - 45932 Assassins

And so on.. This is done in the terminal with commands like cut, grep, cat, etc..

UPDATE: Here is the whole file: http://paste2.org/p/1744102 to parse in that way.

UPDATE2: Please forgive me if I do not accept an answer just yet. Am waiting for the bounty option to appear since for me, stuff like this deserve a bounty. So I will add a bounty and give it to the correct answer or answers.
