Sure, I'll help you create a test case generator for the "11 Puzzle" problem. The generator will create random initial states of the puzzle and output them in the specified format. Here's a Python function to generate test cases for the problem:

```python
import random

def generate_initial_state():
    # Generate a list of numbers from 0 to 11
    numbers = list(range(12))
    # Shuffle the list to create a random initial state
    random.shuffle(numbers)
    
    # Split the list into the required format
    p1 = [numbers[0]]
    p2_p4 = numbers[1:4]
    p5_p9 = numbers[4:9]
    p10_p12 = numbers[9:12]
    p13 = [numbers[12]] if len(numbers) > 12 else []
    
    return p1, p2_p4, p5_p9, p10_p12, p13

def format_state(p1, p2_p4, p5_p9, p10_p12, p13):
    formatted_state = []
    
    formatted_state.append(' '.join(map(str, p1)))
    formatted_state.append(' '.join(map(str, p2_p4)))
    formatted_state.append(' '.join(map(str, p5_p9)))
    formatted_state.append(' '.join(map(str, p10_p12)))
    if p13:
        formatted_state.append(' '.join(map(str, p13)))
    
    return '\n'.join(formatted_state)

def tcgen(num_cases=100):
    test_cases = []
    
    for _ in range(num_cases):
        p1, p2_p4, p5_p9, p10_p12, p13 = generate_initial_state()
        formatted_state = format_state(p1, p2_p4, p5_p9, p10_p12, p13)
        test_cases.append(formatted_state)
    
    return '\n'.join(test_cases) + '\n-1'

# Example usage
if __name__ == "__main__":
    print(tcgen())
```

### Explanation:
1. **generate_initial_state()**: This function creates a random initial state for the 11 puzzle by generating a list of numbers from 0 to 11 and shuffling them. The list is then split into the required format.
2. **format_state()**: This function takes the split lists and formats them into the string representation required by the problem statement.
3. **tcgen()**: This is the main function that generates a specified number of test cases (default is 100). It calls the above functions to create and format each test case and then combines all test cases into a single string, ending with `-1` to indicate the end of input.

This function can be called to generate random test cases for the "11 Puzzle" problem. You can adjust the number of cases by changing the `num_cases` parameter in the `tcgen` function.